This

第一、通过this调用另一个构造方法,用发是this(参数列表),这个仅仅在类的构造方法中,别的地方不能这么用。
第二、函数参数或者函数中的局部变量和成员变量同名的情况下,成员变量被屏蔽,此时要访问成员变量则需要用“this.成员变量名”的方式来引用成员变量。当然,在没有同名的情况下,可以直接用成员变量的名字,而不用this,用了也不为错,呵呵。
第三、在函数中,需要引用该函所属类的当前对象时候,直接用this。
其实这些用法总结都是从对“this是指向对象本身的一个指针”这句话的更深入的理解而来的,死记不然容易忘记而且容易搞错,要理解!
Super
第一、在子类构造方法中要调用父类的构造方法,用“super(参数列表)”的方式调用,参数不是必须的。同时还要注意的一点是:“super(参数列表)”这条语句只能用在子类构造方法体中的第一行。
第二、当子类方法中的局部变量或者子类的成员变量与父类成员变量同名时,也就是子类局部变量覆盖父类成员变量时,用“super.成员变量名”来引用父类成员变量。当然,如果父类的成员变量没有被覆盖,也可以用“super.成员变量名”来引用父类成员变量,不过这是不必要的。
第三、当子类的成员方法覆盖了父类的成员方法时,也就是子类和父类有完全相同的方法定义(但方法体可以不同),此时,用“super.方法名(参数列表)”的方式访问父类的方法。
 this、super的用法也不过这些,只有理解了其中的原理,才不会跌入陷阱!

转载于:https://www.cnblogs.com/wonderlands/p/5632200.html

Java this, super深入理解相关推荐

  1. 【转载】谈谈我对Java中CallBack的理解

    谈谈我对Java中CallBack的理解 转载自: http://www.cnblogs.com/codingmyworld/archive/2011/07/22/2113514.html CallB ...

  2. Java基础-我所理解的泛型

    Java基础-我所理解的泛型 引用 [java]泛型中,? extends T 与 ? super T 的区别.看法_winrh的博客-CSDN博客_泛型 extends 前言 Java基础系列,我所 ...

  3. 【转】java提高篇(二)-----理解java的三大特性之继承

    [转]java提高篇(二)-----理解java的三大特性之继承 原文地址:http://www.cnblogs.com/chenssy/p/3354884.html 在<Think in ja ...

  4. Java中super与this

    这几天看到类在继承时会用到this和super,当然可能不止Java,例如Python之类的其他语言也适用. this this是自身的一个对象,代表对象本身,可以理解为:指向对象本身的一个指针. t ...

  5. java里面super(),Java中super

    Java中super 1. super代表父类?代表父类的对象?还是代表父类的引用?为什么super()在构造方法,super.fun()在方法能用?个人认为应该是super表示对象才能这么调用,可父 ...

  6. java中super的用法

    java中super的用法 super只在子类中出现 super有三种用法 [1] super.xxx; xxx可以是类的属性. 例如super.name;即从子类中获取父类name属性的值 [2]  ...

  7. Java中 多态的理解

    ** Java中 多态的理解 ** 多态官方定义为: 所谓多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量倒底会指 ...

  8. Java 回调函数的理解

    以下是我对java回调函数的理解,希望对各位有帮助. 简而言之,假设有两个类A与B,还有一个回调接口C(有一个c方法).其中A类持有一个B类对象作为属性和拥有一个a方法,并实现了接口C,所以A类中就有 ...

  9. Java常量字符串String理解

    Java常量字符串String理解 以前关于String的理解仅限于三点: 1.String 是final类,不可继承 2.String 类比较字符串相等时时不能用" == ",只 ...

最新文章

  1. 前端之css引入方式/长度及颜色单位/常用样式
  2. bash-shell--高级编程
  3. idea git 在文件上点了revert怎么复原_在 IntelliJ IDEA 中使用 Git,太方便了
  4. CSS3的过渡和转换
  5. preg_match_all使用实例
  6. 数据库工作笔记009---linux 导入导出postgresql数据库
  7. 关于Itext 报错-java.lang.NoClassDefFoundError: org/bouncycastle/asn1/ASN1Encodable
  8. Microsoft Office公式编辑器(CVE-2017-11882)漏洞分析报告
  9. 区块链之零知识证明(zk-SNARK从小白到明白)
  10. 发链(FAB)技术有望突破区块链交易瓶颈
  11. 在本地计算机无法启动clipbook,依赖服务组无法启动 win7依赖服务或组无法启动 怎么弄啊...
  12. 018-JL,JNGE JLE,JNG JG,JNLE JGE,JNL带符号条件转移指令小结
  13. 220413数据分析总结
  14. 高血糖可以吃哪些零食
  15. 无服务器人工智能去中心化,人工智能未来的发展方向是去中心化智能?
  16. GRS认证培训,GRS全球回收标准认证的步骤,GRS认证对工厂的好处
  17. 关于日期格式yyyy-MM-dd和YYYY-MM-dd
  18. 计算机病毒的隐藏方式有ign,浅谈windows下的病毒隐藏技术.doc
  19. unittest入门
  20. electron开发windows驱动程序

热门文章

  1. linux 内核学习线索初步
  2. administrator用户不见了
  3. XPATH获取USER列用户ID的小方法
  4. Windows用户模式下的线程同步
  5. OAuth2.0_JWT令牌-生成令牌和校验令牌_Spring Security OAuth2.0认证授权---springcloud工作笔记148
  6. Netty工作笔记0082---TCP粘包拆包实例演示
  7. C#.Net工作笔记018---葡萄城控件FlexGrid自定义单元格_以及给自定义控件添加自定义事件
  8. Python工作笔记001---python3的print加括号_Python3中不存在raw_input( )了
  9. RabbitMq学习笔记005---登录rabbitmq报错User can only log in via localhost
  10. python编程(基于订阅模式的mvc实现)