软件编程
位置:首页>> 软件编程>> java编程>> Java中通过Class类获取Class对象的方法详解

Java中通过Class类获取Class对象的方法详解

作者:17十七  发布时间:2021-11-09 17:12:57 

标签:java,class类,class对象

前言

本文主要给大家介绍的是关于Java通过Class类获取Class对象的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍:

阅读API的Class类得知,Class 没有公共构造方法。Class 对象是在加载类时由 Java 虚拟机以及通过调用类加载器中的 defineClass 方法自动构造的

获取Class对象的三种方式(实例采用Person类)

方式1:通过Object类的getObject()方法


Person p = new Person();
Class c = p.getClass();

方式2: 通过 类名.class 获取到字节码文件对象(任意数据类型都具备一个class静态属性,看上去要比第一种方式简单)。


Class c2 = Person.class;

方式3: 通过Class类中的方法(将类名作为字符串传递给Class类中的静态方法forName即可)。


Class c3 = Class.forName("Person");

注意:第三种和前两种的区别

前两种你必须明确Person类型.

后面是指定这种类型的字符串就行.这种扩展更强.我不需要知道类名.我只提供字符串,按照配置文件加载就可以了

代码演示:


public class ReflectDemo {
public static void main(String[] args) throws ClassNotFoundException {
 //通过Object类的getObject()方法
 Person p = new Person();
 Class c1 = p.getClass();
 System.out.println(c1);

//类名.class 获取到字节码文件对象
 Class c2 =Person.class;
 System.out.println(c2);

//通过Class类中的方法forName()
 Class c3 = Class.forName("cn.shiqi.demo1.Person");
 System.out.println(c3);
}
}

class Person{

}

来源:http://www.cnblogs.com/17shiqi/p/7442358.html

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com