this和super的异同

本文详细探讨了Java编程中this和super两个关键字的异同。相同点在于它们都能调用类的成员,包括属性、方法和构造器。不同之处在于,this主要用来引用当前对象,而super用于访问父类的成员;this没有访问权限限制,但super需遵循public或protected的访问规则;此外,this还可以作为当前对象的引用,super则不具备此功能。
摘要由CSDN通过智能技术生成

this和super的异同:
    相同: 
        1) 都可以调用类成员
        2) 调用的语法相同:
                调用属性:                关键字.属性名
                调用方法:                关键字.方法名(实参)
                调用构造方法:        关键字(实参) 
    不同:
        1) 调用的类成员归属不同: 
                    this调用本类成员
                    super调用父类成员
        2) 访问权限要求不同:
                    this无访问权限要求
                    super有权限要求. 通常需要public / protected
        3) this可以用于指代使用方法的当前对象. super没有类似的功能

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 在Java类中,this和super都是关键字,用于引用当前对象和父类对象。this代表本类对象的引用,super代表父类的内存空间的标识。\[1\] this关键字主要用于以下几个方面: 1. 调用本类中的成员方法或成员变量。 2. 在构造方法中调用本类的其他构造方法。 3. 返回当前对象。 super关键字主要用于以下几个方面: 1. 调用父类中的成员方法或成员变量。 2. 在子类构造方法中调用父类的构造方法。 3. 在子类中访问父类的构造方法。 在使用super和this时,有一些区别和注意事项: 1. 当super.后面跟方法时,它是在调用父类中的该方法(重写前);而this.后面跟方法时,它是在调用子类中的该方法(重写后)。 2. 当super.后面跟属性时,它是在调用父类中定义的属性;而this.后面跟属性时,它既可以调用从父类继承过来的属性,也可以调用自身的属性。 3. super()用于子类调用父类的构造方法,而this()用于同类的多个构造方法之间互相调用。 4. super()和this()都必须写在构造方法的第一句,不能同时使用。 总结起来,super总是与父类相关,用于访问子类的父类属性和行为;而this则是当前对象的引用,用于访问本类的属性和行为。\[2\] \[3\] #### 引用[.reference_title] - *1* [Java关键字(二):this 和 super](https://blog.csdn.net/weixin_52533007/article/details/124136944)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v4^insert_chatgpt"}} ] [.reference_item] - *2* *3* [this和super的总结](https://blog.csdn.net/weixin_42888747/article/details/108065671)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v4^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值