java核心技术反射

类加载器:

用来加载经过javac编译成的.class文件。jvm虚拟机当中的类加载器负责加载这些编译好的类字节文件,先通过一系列的处理,而后缓存到咱们的JVM虚拟机中。供程序随时使用。java

反射实现的基础---》class类

class 声明类型缓存

Class 描述java类的组成成分(名字、属性、路径、父类、构造方法、普通方法)框架

Class 实例化的方式? 加载到虚拟的这个模板字节 创造一个实际的对象出来
大写的Class是描述咱们的java类jvm

String s = "获取Class对象";
	   //1实例化对象.getClass()
	   Class clazz1 = s.getClass();
	   //2 类.class
	   Class clazz2 = String.class;
	   //3各类框架经常使用        Class.forName();
	   Class clazz3 =Class.forName("java.lang.String");
	   System.out.println(clazz1 == clazz2);//true
	   System.out.println(clazz1 == clazz3);//true
	   
	   System.out.println(Integer.class == int.class);//false
	   System.out.println(Integer.TYPE == int.class);//true
	   //八大简单基本类型  void 是咱们的九大预约义
	   
	   Class clazz4 = int.class;
	   System.out.println(clazz3.isPrimitive()); //false  String 也是一个封装类
	   System.out.println(clazz4.isPrimitive()); //true int是预约义的
	   
	   //获取String传入StringBuffer构造方法
	   Constructor constructor = clazz3.getConstructor(StringBuffer.class);
	   //使用构造方法 实例化一个String对象
	   String ss = (String)constructor.newInstance(new StringBuffer("aaaa"));
	   
	   System.out.println(ss);

反射

反射就是将一个类的组成部分映射成相应的java对象 字节模板 他的每部分的字节模板code

相关文章
相关标签/搜索