Day4 继承.super.this

1.继承:1>概念:共性抽取,是多态的前提,分为父子类,子类可拥有父类的内容,并拥有自己的内容;

                             //public class 子类名extends 父类名{ };

               2>父类对象只能使用父类的东西,子类可以使用父类和子类的东西;

               3>父子类若有重名:<1>直接通过子类对象访问成员变量:谁调用优先用谁,没有就向上找;

                                                <2>间接通过成员方法访问成员变量:方法属于谁优先用谁,没有就向上找;

               4>子类方法中重名的三种变量:<1>局部变量:直接写成员变量名;

                                                                  <2>本类的成员变量:this.成员变量名;

                                                                  <3>父类的成员变量:super.成员变量名;

               5>访问成员方法的规则:创建的对象是谁,优先用谁的方法,没有就向上找;成员方法和成员变量都是向上

                                                       找,不能向下找。

2.重写/覆盖/覆写(Override):1>概念:继承关系中,方法名称一样,参数列表也一样;

                                               2>特点:创建了子类对象,就优先用子类方法;

                                               3>注意事项:<1>@Override: //写在方法前面,检测是否是正确的覆盖重写;

                                                                     <2>子类方法返回值必须<=父类方法返回值的范围 //Object是所有类的父类

                                                                           Object>String;

                                                                     <3>public > protected > (default) > private  子类方法的权限>=父类方法的权限;

                                               4>构造方法的访问特点:<1>子类必须调用父类构造方法,没写的时候默认方法前有super,先调

                                                                                              用父类,后执行子类;

                                                                                       <2>super的父类构造调用,必须是子类构造方法的第一个语句,不能一

                                                                                            个子类构造方法调用多super构造;

                                                                                       <3>子类构造可以通过super关键字来调用父类重载构造;

                                                                                       <4>总结:子类必须调用父类构造方法,不写就默认super(),写了就用

                                                                                             写的super调用,super有且只有一个,

3.super的三种用法:1>子类成员方法中,访问父类的成员变量;

                                  2>子类成员方法中,访问父类的成员方法;

                                  3>子类构造方法中,访问父类的构造方法;

4.this的三种用法:1>在本类成员方法中,访问本类的成员变量;

                              2>在本类成员方法中,访问本类的另一个成员方法;

                              3>在本类构造方法中,访问本类的另一个构造方法,this(...)必须是构造方法的第一个语句;

                                  super和this的构造调用,只能使用一个;

5.this和super的地址图解:

6.继承的特点:1>单继承,只有一个直接父类;

                         2>可以多级继承,java.lang.Object是所有类的父类

                         3>一个父类可以拥有很多子类。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值