获取类名的方法
相对于普通类
结构一: 类名.class.getSimpleName()
System.out.println("该类的名称是:"+Company.class.getSimpleName());
获取简单类名
该类的名称是:Company
结构二: 类名.class.getCanonicalName()
System.out.println(Company.class.getCanonicalName());
结果
test09.Company
结构三:类名.class.getName()
System.out.println(Company.class.getName());
结果
test09.Company
getCanonicalName() 和 getName() 的区别
在内部类中
System.out.println(CompanyInnerclass.class.getName());
System.out.println(CompanyInnerclass.class.getCanonicalName());
结果
test09.Demo$CompanyInnerclass
test09.Demo.CompanyInnerclass
在数组类中
System.out.println(companyInnerclasses.getClass().getName());
System.out.println(companyInnerclasses.getClass().getCanonicalName());
结果
[Ltest09.Demo$CompanyInnerclass;
test09.Demo.CompanyInnerclass[]