
类加载机制与反射
文章平均质量分 89
xiaote0225
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
类加载机制与反射1——类的加载、连接和初始化
类的加载、连接和初始化JVM和类类的加载类的连接类的初始化类初始化的时机系统可能在第一次使用某个类时候加载该类,也可能采用预加载机制来加载某个类。1.JVM和类 当调用java命令运行某个Java程序时,该命令将会启动一个Java虚拟机进程,不管该Java程序有多么复杂,该程序启动了多少个线程,它们都处于该Java虚拟机进程里。同一个JVM的所有线程、所有变量都处于同一个进程里,它们都使用该...原创 2018-04-02 17:52:30 · 264 阅读 · 0 评论 -
类加载机制与反射2——类加载器
类加载器类加载器简介类加载机制创建并使用自定义的类加载器URLClassLoader类类加载器负责将.class文件(可能在磁盘上,也可能在网络上)加载到内存中,并为之生成对应的java.lang.Class对象。1.类加载器简介 类加载器负责加载所有的类,系统为所有被载入内存中的类生成一个java.lang.Class实例。一旦一个类被载入JVM中,同一个类就不会被再次载入了。 正...原创 2018-04-02 18:21:53 · 252 阅读 · 0 评论 -
类加载机制与反射3——通过反射查看类信息
Java程序中的许多对象在运行时都会出现两种类型:编译时类型和运行时类型,例如代码:Person p = new Student();这行代码将会生成一个p变量,该变量的编译时类型为Person,运行时类型为Student;除此之外,还有更极端的情形,程序在运行时接收到外部传入的一个对象,该对象的编译时类型是Object,但程序又需要调用该对象运行时类型的方法。 为了解决这些问题,程序需要在运行...原创 2018-04-03 09:11:53 · 209 阅读 · 0 评论 -
类加载机制与反射4——使用反射生成并操作对象
Class对象可以获得该类里的方法(由Method对象表示)、构造器(由Constructor对象表示)、成员变量(由Field对象表示),这三个类都位于java.lang.reflect包下,并实现java.lang.reflect.Member接口。程序可以通过Method对象来执行对应的方法,通过Constructor对象来调用对应的构造器创建实例,能通过Field对象直接访...原创 2018-04-03 09:42:32 · 230 阅读 · 0 评论 -
类加载机制与反射5——使用反射生成JDK动态代理
在Java的java.lang.reflect包下提供了一个Proxy类和一个InvocationHandler接口,通过使用这个类和接口可以生成JDK动态代理类或动态代理对象。使用Proxy和InvocationHandler创建动态代理动态代理和AOP1.使用Proxy和InvocationHandler创建动态代理 Proxy提供了用于创建动态代理类和代理对象的...原创 2018-04-03 10:12:30 · 321 阅读 · 0 评论 -
类加载机制与反射6——反射和泛型
从JDK5以后,Java的Class类增加了泛型功能,从而允许使用泛型来限制Class类,例如,String.class的类型实际上是Class<String>。如果Class对应的类暂时未知,则使用Class<?>。通过在反射中使用泛型,可以避免使用反射生成的对象需要强制类型转换。泛型和Class类使用反射来获取泛型信息1.泛型和Class类 ...原创 2018-04-03 10:26:39 · 297 阅读 · 0 评论