java学习笔记

本文详细介绍了Java中的super关键字,包括其在实例方法和构造方法中的使用,以及this与super的区别。强调super用于访问父类的属性和方法,以及在构造方法中调用父类构造方法的重要性。同时指出,super()在创建子类对象时确保父类特征的初始化,而super关键字并不创建新对象,它代表当前对象中父类型的特征。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. super概述

    1. super是一个关键字,全部小写
    2. this:
      1. this能出现在实例方法和构造方法中
      2. this的语法是:"this."、"this()"
      3. this不能使用在静态方法中
      4. this.大部分情况下是可以省略的
      5. this.什么时候不能省略
        1. 在区分局部变量和实例变量的时候不能省略
      6. this()只能出现在构造方法的第一行,通过当前的构造方法去调用本类中其他的构造方法,目的是:代码复用
    3. super:
      1. super能出现在实例方法和构造方法中
      2. super的语法是:"super."、"super()"
      3. super不能使用在静态方法中
      4. super.大部分情况下是可以省略的
      5. super.什么时候不能省略
        1. 子类和父类出现同名属性,想在子类中访问父类的特征,super.不能省略
      6. super()只能出现在构造方法的、第一行,通过当前的构造方法区调用父类中其他的构造方法,目的是:创建子类对象的时候,先初始化父类型特征
        1. super()
          1. 表示通过子类的构造方法调用父类的构造方法
          2. 模拟现实世界中的这种场景:想要有儿子,需要先有父亲
        2. 一个类如果没有手动提供任何构造方法,系统会默认提供一个无参数构造方法
        3. 一个类如果手动提供了一个构造方法,那么无参数构造系统将不再提供
        4. 建议手动的将一个类的无参数构造方法写出来
        5. 当一个构造方法的第一行既没有this()又没有super()的话,默认会有一个super();表示通过当前子类的构造方法调用父类的无参数构造方法。所以必须保证父类的无参数构造方法是存在的
        6. this()和super()不能共存,它们都是只能出现在构造方法的第一行
        7. 无论如何,父类的构造方法是一定会执行的
        8. 在jav语言中不管是new什么对象,最后Oobject类的无参数构造方法一定会执行【object类中的无参数构造方法一定是最先执行的】
        9. 栈顶的特点:
          1. 最先调用,但是最先执行结束
          2. 后进先出原则
        10. super代表的是当前对象(this)的父类型特征
        11. 在构造方法执行过程中一连串调用了父类的构造方法,父类的构造方法又继续向下调用它的父类的构造方法,但是实际上对象只创建了一个
        12. suoer(实参)的作用是:初始化当前对象的父类型特征,并不是创建新对象,实际上对象只创建了1个
        13. super关键字代表的就是当前对象的那部分父类型特征
        14. java中允许在子类中存在与父类同名的变量
        15. super不是引用,不保存内存地址,super也不执行任何对象,只代表当前对象内部的那一块父类型特征
        16. super.属性名   【访问父类的属性】
        17. super.方法名  【访问父类的方法】
        18. super(实参)   【调用父类的构造方法】
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值