目录

java获取类对象(class)的三种方法三种方法总结

1.通过实例对象获取 实例对象.getClass()

2.通过类名获取 类.class

3.通过Class类静态方法获取 Class.forName(“全类名”)

java获取类对象(class)的三种方法

三种方法总结

通过实例对象获取(实例对象.getClass();)

通过类名.class获取(类名.calss)

通过类的静态方法获取(Class.forName(“全类名”))

1.通过实例对象获取 实例对象.getClass()

实现代码:

package com.liangyehao;

import java.util.Date;

public class Test01 {

public static void main(String[] args) throws IllegalAccessException, InstantiationException {

//通过实例化对象获取

Date date = new Date();

Class extends Date> dateClass = date.getClass();

System.out.println(dateClass);

}

}

输出结果:

a621ea9afd5a

1.png

2.通过类名获取 类.class

实现代码:

package com.liangyehao;

/**

* 获取一个类的class文件对象的三种方式

* 1.对象获取

* 2.类名获取

* 3.Class类的静态方法获取

*/

public class Test02 {

public static void main(String[] args) {

//通过类名获取

Class> dateClass = java.util.Date.class;

System.out.println(dateClass);

}

}

输出结果:

a621ea9afd5a

1.png

3.通过Class类静态方法获取 Class.forName(“全类名”)

实现代码:

package com.liangyehao;

/**

* 获取一个类的class文件对象的三种方式

* 1.对象获取

* 2.类名获取

* 3.Class类的静态方法获取

*/

public class Test03 {

public static void main(String[] args) throws ClassNotFoundException {

//通过Class类静态方法forName()获取

Class> dateClass = Class.forName(“java.util.Date”);

System.out.println(dateClass);

}

}

输出结果:

a621ea9afd5a

1.png

总结:

三种方式都十分简单,获取类对象是java反射的基础,下一章节我们将继续探讨这三种方式的差异。


版权声明:本文为weixin_35282085原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_35282085/article/details/114053421