反射之Class类 老生常谈反射之Class类的使用(必看篇)
人气:0想了解老生常谈反射之Class类的使用(必看篇)的相关内容吗,在本文为您仔细讲解反射之Class类的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:反射,Class类,下面大家一起来学习吧。
任何一个类都是Class类的实例对象,这个实例对象有三种表示方式
第一种表示方式(任何一个类都有一个隐含的静态成员变量class):
Class c1 = Foo.class;
第二种表示方式(已知该类对象,通过getClass方法):
Foo foo1 = new Foo(); 2 Class c2 = foo1.getClass();
※ c1、c2表示了Foo类的类类型(class type)
第三种表示方式
Class c3 = null; try { c3 = Class.forName("com.format.test.Foo"); } catch (ClassNotFoundException e) { e.printStackTrace(); }
※ 通过类的类型创建该类的对象实例
try { Foo foo2 = (Foo) c1.newInstance(); //需要有无参构造 } catch (InstantiationException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); }
以上这篇老生常谈反射之Class类的使用(必看篇)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
加载全部内容