JAVA反射(一)java获取类对象(class)的三种方法

目录
java获取类对象(class)的三种方法三种方法总结
1.通过实例对象获取 实例对象.getClass()
2.通过类名获取 类.class
3.通过Class类静态方法获取 Class.forName("全类名")

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

三种方法总结

  1. 通过实例对象获取(实例对象.getClass();)
  2. 通过类名.class获取(类名.calss)
  3. 通过类的静态方法获取(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);

    }
}

输出结果:

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);
    }
}

输出结果:

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);
    }
}

输出结果:

1.png

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

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

友情链接更多精彩内容