java学习笔记

本文详细介绍了Java中的super关键字,包括其在实例方法和构造方法中的使用,以及this与super的区别。强调super用于访问父类的属性和方法,以及在构造方法中调用父类构造方法的重要性。同时指出,super()在创建子类对象时确保父类特征的初始化,而super关键字并不创建新对象,它代表当前对象中父类型的特征。
  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(实参)   【调用父类的构造方法】
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值