[Java SE]反射之Class

2023-05-20,,

1 获取 指定Class 的类名

package cn.johnnyzen.bd.gatewayservice;

import org.junit.Test;

    @Test
public void getClassFullPath(){
System.out.println(LogTest.class.getClass().getName()); // java.lang.Class
System.out.println(LogTest.class.getClass().getCanonicalName()); // java.lang.Class
System.out.println(LogTest.class.getClass().getSimpleName()); // Class
System.out.println(LogTest.class.getClass().getTypeName()); // java.lang.Class // //////////// // getName: 存在于虚拟机中 class 的名称
System.out.println(LogTest.class.getName()); // cn.johnnyzen.bd.gatewayservice.LogTest
// getCanonicalName(): 取一个更见名思意的名称
// 大部分两者是没有区别的,但是像 byte[] 这种类型就有区别了
// getName():打印显示为 [B
// getCanonicalName(): 打印显示为 byte[]
System.out.println(LogTest.class.getCanonicalName()); // cn.johnnyzen.bd.gatewayservice.LogTest
System.out.println(LogTest.class.getSimpleName()); // LogTest System.out.println(LogTest.class.getTypeName()); // cn.johnnyzen.bd.gatewayservice.LogTest
}

X 参考/推荐文献

Java SE之初探反射机制 - 博客园/千千寰宇
java中getCanonicalName()和getName()的区别 - 简书

[Java SE]反射之Class的相关教程结束。

《[Java SE]反射之Class.doc》

下载本文的Word格式文档,以方便收藏与打印。