DESKTOP-EA11HIB_20200825-蒋宇飞

一、问题

1.运行时类型

Human h = new Human();

Class<?> c1 = h.getClass(); 
System.out.println( h.getClass() );
//输出class com.itlaobing.Human

Class<?> c2 = h.getClass(); 
System.out.println( c2.getClass() );
//输出class java.lang.Class

Class<?> c3 = h.getClass(); // 获得【运行时类型】
System.out.println( c3.getName() );
//输出com.itlaobing.Human
System.out.println(c3.getSimpleName());
//输出Human

任意类的一个实例都可以通过 getClass() 方法来获取该实例对应类的Class实例,结果为 Class 包名.类名 ,具体来说该实例对应类的Class实例应该就是此实例被创建时所属的类,所有的类都属于Class类型, getClass() 方法的定义与结果不是很严谨,刚接触时有点混乱。

2.解决思路

运行时类型是程序运行期间引用变量所指向对象的类型,应该是输出一个类型,使用 .getSimpleName() 方法直接得出Human类型,简单明了。

二、感想

天气这么热,开着窗户又开空调,感觉比以往更热了,是否该把窗户关上。

标签

© 2021 成都云创动力科技有限公司 蜀ICP备20006351号-1