欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

老生常谈反射之Class类的使用(必看篇)

程序员文章站 2023-12-19 14:06:28
任何一个类都是class类的实例对象,这个实例对象有三种表示方式 第一种表示方式(任何一个类都有一个隐含的静态成员变量class): class c1 = fo...

任何一个类都是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类的使用(必看篇)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

上一篇:

下一篇: