基本概念
- 通常状况下编写代码都是固定的,无论运行多少次执行的后果也是固定的,在某些非凡场合中编写代码时不确定要创立什么类型的对象,也不确定要调用什么样的办法,这些都心愿通过运行时传递的参数来决定,该机制叫做动静编程技术,也就是反射机制
- 艰深来说,反射机制就是用于动静创建对象并且动静调用办法的机制
- 目前支流的框架底层都是采纳反射机制实现的
如:Person p = new Person();
- 示意申明Person
类型的援用指向Person
类型的对象p.show();
- 示意调用Person
类中的成员办法show
Class类
基本概念
- java.lang.Class类的实例能够用于形容Java应用程序中的类和接口,也就是一种数据类型
- 该类没有公共构造方法,该类的实例由Java虚拟机和类加载器主动结构实现,实质上就是加载到内存中的运行时类
获取Class对象的形式
- 应用
数据类型.class
的形式能够获取对应类型的Class对象(把握) - 应用
Class.forName()
的形式来获取参数指定类型的Class对象(把握) - 应用
援用/对象.getClass()
的形式能够获取对应类型的Class对象 - 应用
包装类.TYPE
的形式能够获取对应根本数据类型的Class对象 - 应用类加载器
ClassLoader
的形式获取指定类型的Class对象