class.getName()和class.getSimpleName()的区别

Posted 薛文博

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了class.getName()和class.getSimpleName()的区别相关的知识,希望对你有一定的参考价值。

根据API中的定义:

Class.getName():以String的形式,返回Class对象的“实体”名称;

Class.getSimpleName():获取源代码中给出的“底层类简称。

 

public class Main {  
      
    private static final String TAG1 = Main.class.getName();  
    private static final String TAG2 = Main.class.getSimpleName();  
      
    public static void main(String[] args) {  
        System.out.println("getName ----- " + TAG1 + "\\n" + "getSimpleName ----- " + TAG2);  
    }  
} 

 

结果图片如下:

 

如上图所示,我们可以很清晰明了地看出它们的区别:

getName ----“实体名称” ---- com.se7en.test.Main

getSimpleName ---- “底层类简称” ---- Main

 

以上是关于class.getName()和class.getSimpleName()的区别的主要内容,如果未能解决你的问题,请参考以下文章

Class.getName() 的静态调用

Class.getName()对给定的类做了什么?

java中最容易犯错的特殊字符

三种类加载姿势

java反射-基础语法

java中 .class 属性从哪里来?哪个类中的属性?