前言

众所周知,Web应用都要部署到Web服务器中运行,对于Java开发者而言,了解Web服务器的原理是十分必要的。本系列文章主要记录博主如何一步步手写简单的Web服务器,其中内容包含知识点有:Java反射机制,XML解析,Http协议,以及Java
Web基础。

Java反射

反射可以说是Java中最强大的技术,它的用处太多太多。比如,可以让程序在运行时构建任意类的对象,可以了解任何对象所属的类,了解类的成员变量和方法,调用任意对象的方法。反射是Java成为动态语言的关键。很多优秀的框架都用到了Java反射,当然,Web服务器也需要反射来完成。

Class类

注意,这里讲的是Class类,不是class关键字。Class类可以说是Java反射机制的核心。任意类的对象都可以获取其对应Class类对象,其中存储着与该类相关的信息,比如成员变量、方法等。获取Class类对象的方法有三种:

第一种,通过任一对象的getClass()方法来获取,示例如下:
//方式一 Person person = new Person(); Class<Person> clazz1 = (Class<Person>)
person.getClass();
第二种,通过 类名.class 获取,示例如下:
//方式二 Class<Person> clazz2 = Person.class;
第三种,通过Class.forName(“类的全路径”)方法获取,示例如下:
//方式三 Class<Person> clazz3 = (Class<Person>)
Class.forName("com.miguel.entity.Person");
通常情况下,我们采用的是第三种方法,但是要注意,假如该类不存在,将会抛出ClassNotFoundException异常,此时要做好相应的处理。

 

这是本人写的第一篇博客,之后还会更新,主要是自己的一些学习笔记和经验总结,供入门新手参考,大牛们轻喷哈!

技术
©2019-2020 Toolsou All rights reserved,
rk3399_android7.1调试USB蓝牙模块小结org.postgresql.util.PSQLException 处理记录(精华)2020年6月29日 C#类库 接口签名校验使用mt-range实现一个数字随着滑动杆变化的效果css基础2:flex 多行均分有间隙布局mybatis系列之返回结果映射Mybatis映射文件Mapper.xml中#和$的区别 艾伟也谈项目管理,基层管理杂谈pytorch之ResNet18(对cifar10数据进行分类准确度达到94%)uboot设置nfs参数——linux kernel使用nfs方式加载根文件系统rootfs(六)