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

 更新时间:2017年08月21日 17:01:37   投稿:lqh  
这篇文章主要介绍了详解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<User> { 
  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<T> 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()和super.getClass()的实例,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • Java实现和电脑玩剪刀石头布游戏

    Java实现和电脑玩剪刀石头布游戏

    这篇文章主要为大家详细介绍了Java实现和电脑玩剪刀石头布游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • ProtoStuff不支持BigDecimal序列化及反序列化详解

    ProtoStuff不支持BigDecimal序列化及反序列化详解

    这篇文章主要为大家介绍了ProtoStuff不支持BigDecimal序列化/反序列化,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • Java中将 int[] 数组 转换为 List分享

    Java中将 int[] 数组 转换为 List分享

    这篇文章主要介绍了Java中将 int[] 数组 转换为 List分享的相关资料,需要的朋友可以参考下
    2022-12-12
  • 快速了解Hibernate中的Session

    快速了解Hibernate中的Session

    这篇文章主要介绍了快速了解Hibernate中的Session,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • Feign 请求动态URL方式

    Feign 请求动态URL方式

    这篇文章主要介绍了Feign 请求动态URL方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • 解决Spring boot 整合Junit遇到的坑

    解决Spring boot 整合Junit遇到的坑

    这篇文章主要介绍了解决Spring boot 整合Junit遇到的坑,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • MyBatis中常见的SQL执行方式及其使用方法

    MyBatis中常见的SQL执行方式及其使用方法

    MyBatis可能很多人都一直在用,但是MyBatis的SQL执行流程可能并不是所有人都清楚了,下面这篇文章主要给大家介绍了关于MyBatis中常见的SQL执行方式及其使用的相关资料,需要的朋友可以参考下
    2023-09-09
  • 浅谈Spring中@Import注解的作用和使用

    浅谈Spring中@Import注解的作用和使用

    这篇文章主要介绍了浅谈Spring中@Import注解的作用和使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • java接口Array介绍

    java接口Array介绍

    这篇文章主要介绍了java接口Array的相关资料,需要的朋友可以参考下
    2014-10-10
  • java实现flappy Bird小游戏

    java实现flappy Bird小游戏

    这篇文章主要为大家详细介绍了java实现flappy Bird小游戏,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-12-12

最新评论