JavaAPI详解系列(7):Class类(1)

Class类的实例描述运行中Java应用程序的类和接口。一个Class类的实例可以描述所有Java的数据类型:类,接口,枚举,注解,数组基本数据类型和关键字void类型。

Class类没有public构造器。Class类的实例的创建是由JVM加载其字节码或通过调用类加载器调用时自动创建。Class类Java反射的核心.通过该类通过字符串类型名称动态创建实例和调用方法。

通常使用三种方式来获得Class对象。

方式一:对象名.getClass();

packagestring.lang.java;

importjava.io.Serializable;

publicclassClassDemo1 {

publicstaticvoidmain(String[]args) {

fun(1);

fun(2.3);

fun("Hello");

fun(newjava.util.Date());

fun(newSerializable(){});

}

publicstaticvoidfun(Objectobj){

System.out.println(obj.getClass().getName());

}

}

运行的结果如下:

方式二:类型名.class;

packagestring.lang.java;

publicclassClassDemo2 {

publicstaticvoidmain(String[]args) {

System.out.println(String.class.getName());

System.out.println(Override.class.getName());

System.out.println(int.class.getName());

System.out.println(void.class.getName());

}

}

运行的结果如下:

方式三:Class.forName(String classFullName);

packagestring.lang.java;

publicclassClassDemo3 {

publicstaticvoidmain(String[]args) {

try{

Classclz=Class.forName("java.lang.String");

System.out.println(clz.getName());

}catch(ClassNotFoundExceptione) {

e.printStackTrace();

}

}

}

运行的结果如下:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容