这篇文章主要介绍了详解java中this.getClass()和super.getClass()的实例的相关资料,需要的朋友可以参考下

详解java中this.getClass()和super.getClass()的实例

前言:

遇到this.getClass()和super.getClass()的返回值感到疑惑,经过探索豁然开朗。

getClass()是java中Object类的一个方法,其原型为:

public final Class> getClass()

返回值为 当前运行时类的Class对象。

所以写了一段代码来说明:

getClass()不受this和super影响,而是有当前的运行类决定的。

代码如下:

父类:

package com.cyou.lijiang_hw; import java.lang.reflect.ParameterizedType; public class BaseDAO { public BaseDAO() { System.out.println("==============BaseDAO initialization============="); System.out.println("this.getClass() ---->" + this.getClass()); System.out.println("super.getClass()---->" + super.getClass()); } }

子类:

package com.cyou.lijiang_hw; public class UserDAO extends BaseDAO { public UserDAO() { System.out.println("\n==============UserDAO initialization============="); System.out.println("this.getClass() ---->" + this.getClass()); System.out.println("super.getClass()---->" + super.getClass()); } }

测试类:

package com.cyou.lijiang_hw; public class Test { public static void main(String[] args) { UserDAO userDAO = new UserDAO(); } }

输出结果为:

==============BaseDAO initialization============= this.getClass() ---->class com.cyou.lijiang_hw.UserDAO super.getClass()---->class com.cyou.lijiang_hw.UserDAO ==============UserDAO initialization============= this.getClass() ---->class com.cyou.lijiang_hw.UserDAO super.getClass()---->class com.cyou.lijiang_hw.UserDAO

java中this.getclass(),Java中关于this.getClass()与super.getClass()的案例相关推荐

  1. super.getClass()与this.getClass()的问题

    题外话: 最近看多线程方面的东西,看到可重入锁的时候,当中有个父类方法a加锁,子类的方法b(覆盖了a方法)也加锁.方法b又会调用a,导致会出现死锁问题,因为两个在处理的时候,都会要拿父类的对象锁.可重 ...

  2. java中this.getclass()_详解java中this.getClass()和super.getClass()的实例

    详解java中this.getClass()和super.getClass()的实例 前言: 遇到this.getClass()和super.getClass()的返回值感到疑惑,经过探索豁然开朗. ...

  3. java中的this.getclass和super.getClass(),以及继承的深入探究

    情况一.继承.多态中的this 在继承多态中: 1.对于方法的覆盖,new的谁就调谁,这就是多态. 2.对于成员变量的覆盖,this在哪个类就指向哪个类的成员变量,没有多态. 即方法有多态性,但是成员 ...

  4. java中getclass_详解java中this.getClass()和super.getClass()的实例

    详解java中this.getClass()和super.getClass()的实例 前言: 遇到this.getClass()和super.getClass()的返回值感到疑惑,经过探索豁然开朗. ...

  5. java中this.getclass(),java中this.getClass()跟super.getClass()详解

    今日遇到this.getClass()和super.getClass()的返回值感到疑惑,经过探索豁然开朗. getClass()是java中Object类的一个方法,其原型为: public fin ...

  6. java中怪物移动_java中两大怪物,附带面试题!

    最近老是有小伙伴问类和Object相关的问题,感觉还是很多人对此不是很明白,那我们今天就干掉这两个怪物. 类介绍 Java 程序是由若干个类组成的,类也是面向对象编程思想的具体实现. 以下为类的定义: ...

  7. java中struts2日期_Struts2中Date日期转换的问题

    今天跑程序的时候莫名其妙的出现了下面的一个异常: java.lang.NoSuchMethodException:com.ca.agent.model.mybatis.ApprovalInforCan ...

  8. Java在MVC开发模式中使用try-catch以及throws避免踩坑

    场景 1.throws是在方法上抛出异常,throw是在语句上抛出异常. 2.try-catch是在catch里处理try捕获异常并处理. 3.一般try-catch是在上层Controller中使用 ...

  9. java resources 目录_Maven项目中读取src/main/resources目录下的配置文件的方法

    在Maven项目的开发中,当需要读取src/下的配置文件时,该怎么做? 我们假设Resources下有一个文件名为kafka.properties的配置文件(为什么用kafka.properties, ...

最新文章

  1. java开发面试复试_面试java开发,面试官会问哪些问题?
  2. 多行并一行显示的两种方式(DB2)
  3. vue借助axios实现网络通信
  4. 数据分析和数据挖掘有什么区别
  5. 2014上海全国邀请赛 解题报告
  6. c语言工程作业,西工大c语言程序作业
  7. Matlab-Simulink文件类型总结
  8. 高通CSR8615蓝牙音频模块单芯片介绍
  9. 多多进宝推广团队_多多进宝推广团长玩法指南
  10. 当Linux配置zh_CN.UTF-8 ,中文还是显示乱码解决办法
  11. 业余草尚硅谷Java视频教程_SpringBoot视频教程免费下载
  12. 《程序员的自我修养》学习笔记之温故而知新
  13. win7 64位虚拟机安装
  14. 深度学习图像处理目标检测图像分割计算机视觉 04--神经网络与误差反向传播BP算法
  15. CentOS挂载3T硬盘的方法
  16. python 高斯约当消元法求逆矩阵
  17. 关于mysql项目经验怎么写_数据库管理员岗位项目经历怎么写
  18. 沈从文——一个战士不是战死沙场,便是回到故乡
  19. 二本院校学弟大二开始实习,大三收割阿里、腾讯实习offer
  20. SOA 开发基础 (下)

热门文章

  1. 【蓝牙】一文入门Bluez的BLE基础开发 - BLE数据收发(Python)
  2. 使用 include<con> “杀死“ 编译器
  3. Aert_Log: 设计一个精简易用的日志
  4. 简单使用OpenGauss数据库
  5. 【XNTP】张鹏 :从P2P到万物互联服务框架
  6. WordCloud词云
  7. Ubuntu18.4官方安装Nginx教程
  8. java localdate_Java 时间类-Calendar、Date、LocalDate/LocalTime
  9. 陈广老师C#参考视频 方法的参数传递 总结
  10. R语言倾向性匹配得分(Propensity score matching)PSM分析实战