首页 > 编程语言 >JAVA中子类使用super.getClass()方法

JAVA中子类使用super.getClass()方法

时间:2022-08-22 12:56:18浏览次数:60  
标签:JAVA Test06 getName test getClass super public

一般来说,java中调用getClass().getName()这个方法可以获取本类的名称,例如:

import java.util.Date;

public class Test06 extends Date {
    public static void main(String[] args) {
        new Test06().test();
    }

    public void test() {
        System.out.println(getClass().getName());
    }
}

结果为

com.test.Test06

阅读一下getClass()方法,这个方法是被final修饰的。

思考一下,如果被final修饰,那么子类无法覆盖这个方法,所以子类调用这个方法其实就是调用父类里的这个方法,也就是说 getClass().getName() 等价于 super.getClass().getName()。所以如果代码这么写:

    public void test() {
        System.out.println(super.getClass().getName());
    }

运行结果仍为 

com.test.Test06
 
x

标签:JAVA,Test06,getName,test,getClass,super,public
From: https://www.cnblogs.com/learn-java-interesting/p/16612453.html

相关文章

  • JAVA基础--数组--2022年8月21日
    第一节数组静态定义方式1、数组的静态初始化的写法和特点是什么样的?  2、数组属于什么类型,数组变量中存储的是什么?引用数据类型,存储的是......
  • Java实现BCD编码与十进制转换
    1、BCD码介绍BCD码(Binary-CodedDecimal‎)亦称二进码十进数或二-十进制代码。用4位二进制数来表示1位十进制数中的0~9这10个数码。是一种二进制的数字编码形式,用二进制编......
  • 【JavaScript】各种手写题汇总复习
    防抖functionthrottle(fun,time){lettimer=nullreturn()=>{if(timer){return}fun()timer=setTimeout(()=>{time......
  • 【Java基础】循环结构for、while、嵌套循环、关键字break、continue
    1.for循环for(inti=0;i<10;i++){System.out.println(i);}执行过程说明(1)循环条件部分②为boolean类型表达式,当值为false时,......
  • Java企业级开发中异常处理的问题
    在企业级开发中,异常的处理和学习中的异常处理差别还是挺大的;在学习中我们了解的是异常的分类和处理异常的方法,而在真实工作中我们要注重异常处理是否得当,因为不得当的异......
  • JAVA---04
    第四天1.Java方法什么是方法方法是语句的集合,它们在一起执行一个功能方法是解决一类问题的步骤的有序组合方法包含于类或对象中......
  • java线上问题跟踪工具Arthas的第一次使用
    Arthas是一款线上监控诊断产品,通过全局视角实时查看应用load、内存、gc、线程的状态信息,并能在不修改应用代码的情况下,对业务问题进行诊断,包括查看方法调用的出入参、异......
  • js拆分选择题各选项【javascript将选择题选项通过正则表达式拆分出来】
    最近做题库项目需要添加试题,尤其是选择题逐个添加各选项很繁琐。通过以下正则表达式可以将选择题题目、选项迅速分离出来,并自动添加到选项文本框$("#split").clic......
  • Java中String和byte类型互相转换
    1、string转byte[]StringinStr="helloworld";byte[]bytes=inStr.getBytes(StandardCharsets.UTF_8); 2、byte[]转stringStringoutSrt=newString(by......
  • Java中数字的四舍五入和取整
    1、向上取整ceilceil的英文意思:天花板,所以向上取整就比较好记忆Math.ceil(1.01)#结果:2 2、向下取整floorfloor的英文意思:地板,所以向下取整Math.floor(1.6)#......