1、反射
概念:反射是java语言的一种机制,通过这种机制,可以动态的实例化对象、读取属性、调用方法。
2、获取类对象的三种方式:
a、Class.forName("完整的类名");
b、类.class();
c、类对象.getClass();
注:一切与反射相关的代码都是从获得类对象开始的。
3、类类
概念:所有的类都放在一起 泛指
例如:所有狗 狗类 Dog (泛指) 狗对象 (特指)
所有猫 猫类 Cat (泛指) 猫对象(特指)
所有类 类类 java.lang.Class 泛指 类对象(特指)
4、常见的异常:
1、java.lang.ClassNotFoundExecption 类找不到异常
出现的原因:1、类名错误 2、忘记导入jar包
2、java.lang.NoSuchMethodExecption 找不到方法异常
出现的原因:没有写这个方法
3、java.lang.IllegalArgumentException 不合法的参数异常
出现的原因:上文中带了参数 而下文要使用的地方没有带参数
5、反射的三大作用:
1、实例化对象:
例如:
//传统方式实例化对象
Student stu=new Student();
传统方式和反射机制实例