关于反射:Java的精华反射机制
1.Java反射机制的概念Java反射机制次要就是在程序运行的时候,动静的加载一些类和这些类的详细信息,而后操作这些类或对象的属性和办法。它的实质就是JVM通过类加载器失去一个class对象后,对其进行反编译,这样就能失去对象中的各种信息。 2.反射机制的优缺点长处: 运行期类型的判断,动静加载类,进步代码灵便度。毛病: 性能瓶颈:反射相当于一系列解释操作,告诉 JVM 要做的事件,性能比间接的 java 代码要慢很多。平安问题:让咱们能够动静操作扭转类的属性同时也减少了类的安全隐患。3.Java反射机制的原理下图就是类的失常加载过程,以及它们的反射原理和class对象: 4.反射具体应用创立Class类的实例有四种办法: //提供的简略的Person类public class Person{ private String name; private int id; private static int UID; private String show(String nation){ System.out.println("我的国籍是:" + nation); return nation; }} //形式一:调用运行时类的属性:.class Class clazz1 = Person.class; //形式二:通过运行时类的对象,调用getClass() Person p1 = new Person(); Class clazz2 = p1.getClass();//通过对象取得class //形式三:调用Class的静态方法:forName(String classPath) Class clazz3 = Class.forName("com.demo.java.Person"); System.out.println(clazz1 == clazz2);//true System.out.println(clazz1 == clazz3);//true //形式四:应用类的加载器:ClassLoader (理解) ClassLoader classLoader = ReflectionTest.class.getClassLoader(); Class clazz4 = classLoader.loadClass("com.demo.java.Person");通过反射创立对应的运行时类的对象 ...