1,什么反射
反射就是一种动态编程的技术,可以在运行阶段动态的创建对象以及动态调用方法,具体由实参决定。
2,Class
java.lang.Class类的实例代表应用程序的类和接口,该类的实例代表一种数据类型。
可以通过以下4种方式获取Class对象:
- 使用“数据类型.class”的方式获取该类型的class对象
- 使用“对象.getClass()”的方式获取该类型的class对象
- 使用“包装类.TYPE”获取该包装类对应基本数据类型的class对象
- 使用Class类的“forName()”获取参数类型的class对象
1 public static void main(String[] args) { 2 //使用"数据类型.class"获取该类型的Class对象 3 System.out.println(int.class);//int 4 System.out.println(void.class);//void 5 System.out.println(Integer.class);//class java.lang.Integer 6 7 //使用"对象.getClass()"获取该类型的Class对象 8 String str=new String(); 9 System.out.println(str.getClass());//class java.lang.String 10 11 //使用"包装类.TYPE"属性获取该包装类对应的基本数据类型的Class对象 12 System.out.println(Integer.TYPE);//int 13 14 //使用Class类的forName()获取参数类型的Class对象 15 try { 16 System.out.println(Class.forName("java.lang.Double"));//class java.lang.Double 17 } catch (ClassNotFoundException e) { 18 e.printStackTrace(); 19 } 20 }
3,Demo
时间: 2024-10-11 09:09:22