任何一个类都是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类的使用(必看篇)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持移动技术网。
如对本文有疑问, 点击进行留言回复!!
网友评论