【JAVA进阶系列】进阶知识--Class类getName()、getCanonicalN。。。

更新时间:2023-05-19 01:11:42 阅读: 评论:0

【JAVA进阶系列】进阶知识--Class类getName()、
getCanonicalN。。。
【JAVA进阶系列】进阶知识 -- Class类 getName()、getCanonicalName()、getSimpleName()、getTypeName() ⽅法的异同
【1】getName()
返回该类对象作为字符串表⽰的实体(类、接⼝、数组类、基本数据类型或 void)的名称
可以理解为返回的是虚拟机中 Class 对象的表⽰
当动态加载类的时候,会⽤到该⽅法的返回值,如: 使⽤ Class.forName() ⽅法
如果是内部类,则使⽤ $ 符号进⾏连接
如果是数组,则使⽤ [ 来表⽰,数组是⼏维,[ 就有⼏个
【2】getCanonicalName()
返回 Java 语⾔规范定义的底层类的规范名称除皱的方法
如果是⼀个本地类或匿名类或其组件的数组类型没有规范名称的,则返回 null
可以理解为返回的是正常的包含路径的类名
该⽅法的返回值可以在 import 语句中使⽤
能唯⼀标识⼀个类,还可以在 toString() 或⽇志操作期间使⽤
【3】getSimpleName()
返回源代码中给出的基础类的简单名称,如果基础类是匿名的,则返回空字符串
可以理解为返回的是仅仅是类名,不包含路径
不能保证能唯⼀标识⼀个类,可以在 toString() 或⽇志操作期间使⽤
【4】getTypeName()
返回此类型名称的信息字符串
可以理解为返回的是该类类型的名称
【5】使⽤⽰例
public class AAA {
class BBB {
}
public static void main(String[] args) {
// 数组
System.out.println(String[].Name()); // [Ljava.lang.String;
System.out.println(String[].CanonicalName()); // java.lang.String[]
System.out.println(String[].SimpleName()); // String[]
喜乐与我System.out.println(String[].TypeName()); // java.lang.String[]
// 成员内部类
安防系统
System.out.println(Name()); // flect.AAA$BBB
System.out.println(CanonicalName()); // flect.AAA.BBB职工之家建设
System.out.println(SimpleName()); // BBB
System.out.println(TypeName()); // flect.AAA$BBB
我的好朋友二年级>lol璐璐// 匿名内部类
System.out.println(new Object(){}.getClass().getName()); // flect.AAA$1
System.out.println(new Object(){}.getClass().getCanonicalName()); // null
System.out.println(new Object(){}.getClass().getSimpleName()); // ""
System.out.println(new Object(){}.getClass().getTypeName()); // flect.AAA$4
// 普通类
System.out.println(Name()); // flect.AAA
System.out.println(CanonicalName()); // flect.AAA
System.out.println(SimpleName()); // AAA
System.out.println(TypeName()); // flect.AAA
// 基本数据类型
System.out.println(Name()); // int
System.out.println(CanonicalName()); // int
System.out.println(SimpleName()); // int
System.out.println(TypeName()); // int
购买外汇
}
}
参考致谢
变形计作文
本博客为博主学习笔记,同时参考了⽹上众博主的博⽂以及相关专业书籍,在此表⽰感谢,本⽂若存在不⾜之处,请批评指正。【1】

本文发布于:2023-05-19 01:11:42,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/688327.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:返回   名称   类型   参考   字符串   规范
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图