目录
- getClass()及getName()方法使用
- getClass
- getName
- 关于getClass()与getName()一道题
- 在牛客网上看到的一道题目
getClass()及getName()方法使用
getClass
public final Class<?> getClass()
返回此 Object 的运行时类。返回的 Class 对象是由所表示类的 static synchronized 方法锁定的对象。
Java的引用变量有两个类型,编译时类型和运行时类型。编译时类型由声明该变量时使用的类型决定,运行时类型由实际赋给该变量的对象决定。
public class StudentDemo { public static void main(String[] args) { Student ss = new StudentSon(1, 2); Class a = ss.getClass(); System.out.println(a.getName()); } }
getName
public String getName()
以 String 的形式返回此 Class 对象所表示的实体(类、接口、数组类、基本类型或 void)名称。
实体:对象引用的目的地
该类运行时类型为StudentSon 编译时类型为Student ,则ss.getClass()返回StudentSon类
运行结果:
StudentSon
关于getClass()与getName()一道题
在牛客网上看到的一道题目
package test; import java.util.Date; public class SuperTest extends Date{ private static final long serialVersionUID = 1L; private void test(){ System.out.println(super.getClass().getName()); } public static void main(String[]args){ new SuperTest().test(); } }
1.super.getClass() 是父类的getClass()方法,其父类是Date,它的getClass()方法是继承自Object类而且没有重写
2.在调用getName()方法而getName()是:包名+类名
所以输出的是:
test.SuperTest
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)