java反射02-使用Class对象
简述
使用反射万事第一步,获取 Class
类。
获取Class对象的方式:
- Class.forName()
- Class.class
- Class.getClass()
获取Class对象
如何取得操作类的Class对象,常用的有三种方式:
使用Class的静态方法来获取一个要被反射的对象。
1.调用Class.forName();
1 | public void test() { |
2.使用类的.class字节文件
1 | public void test() { |
3.调用对象的getClass方法
1 | public void test() { |
验证相同类型class是一个对象
代码验证不同 class 获取
用来同的方式来获取,实际上都是同一个 Class 的实例。
1 | public static void main(String[] args) { |
结果:
true
true
创建对象
创建对象需要使用到newInstance
这个功能。
1 | public void test() { |
即便是泛型的对象也可以创建:
1 | public T1 convert(Class<T1> clazz) { |
获取对象类型
获取 object 具体类型
1 | public void test() { |
结果:
com.liukai.auth.authorization.service.TestInterfaceImpl
java.lang.String
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 人话翻译机!
评论