- 继承的作用:继承解决的是共性抽取
- 在父子类的继承关系当中,如果成员变量重名,则创建子类对象时,访问有两种方式
(1)直接通过子类对象来访问成员变量
访问的原则是等号左边是谁就优先用谁,没有则向上找
(2)间接通过成员方法访问成员变量
该方法属于谁就优先用谁,没有则向上找(就是说如果该方法定义在父类中那么优先使用父类的,如果定义在子类中那么使用子类的) - 区分子类方法中重名的三种写法
(1)局部变量:直接写就可以了
(2)子类中的成员变量 this.成员变量
(3)父类中的成员变量 super.成员变量 - 在父子类的继承关系中,创建子类对象,访问父类和子类中同名成员方法的规则
(1)创建的对象是谁就优先用谁,如果没有则往上找
(2)注意:!!无论是成员变量还是成员方法如果没有都是往上找父类,没有往下找子类的 - 方法覆盖重写的注意事项
(1)必须保证父子类之间方法的名称相同,参数列表也相同
@Override写在方法前面。检测是不是有效的方法重写
如果不写,但是方法名称相同参数列表也相同,也是正确的覆盖重写
(2)子类方法的返回值必须小于等于父类方法的返回值
Object是所有类的父类,如果子类是返回Object,父类返回String,那么这就是错误的
(3)子类方法的权限必须大于等于弗雷方法的权限修饰符
public>protected>default>private - 继承关系中,父子类构造方法的访问特点
(1)子类构造方法中有一个默认的"super()"调用,所以在执行子类的时候,一定是先调用父类构造,在调用子类构造
(2)super的父类构造调用,必须是子类构造方法的第一条语句,这就说明了super()只有一句,不能有多句话
(3)super()关键字的用法有三种用法,
在子类的成员方法中,访问父类的成员变量
在子类的成员方法中,放完父类的成员方法
在子类的构造方法中,访问父类的构造方法 - this关键字的三种使用方法
this的父类构造调用,必须是子类构造方法的第一条语句,这就说明了super()只有一句,不能有多句话,也就是说不能和super同时使用
(1)在本类的成员方法中,访问本类的成员变量
(2)在本类的成员方法中,访问本类的另一个成员方法
(3)在本类的构造方法中,访问本类的另一个构造方法 - 继承中的内存分配情况
java的继承
最新推荐文章于 2023-03-26 18:05:53 发布