07JAVA基础面向对象-继承/多态

1、继承

一、概念

子类的共性
重用现有类并在此基础上进行扩展
public class 子类 extends 父类{}

二、继承中的成员访问

成员变量 成员方法
局部->本类中成员变量->父类中非私有成员变量 本类中方法->父类中非私有成员方法->object基类中非私有成员方法

三、方法重写

(1)、为何要重写

父类的方法不能知足咱们的需求,咱们须要进行扩展。

(2)、怎么进行重写

子类中的方法名、方法权限、方法形参和父类同样,此时就产生了重写

(3)、重写的注意点

(1)子类只能重写父类的非私有方法。
(2)子类重写的方法权限要大于等于父类,为了不出错,最好采用同样
(3)权限类型:public>protected>默认>pravite
(4)@Override 注解:标记一个方法,表面该方法为重写父类

四、this和super

(1)、this

this表示的是对象的引用

三、super

表示父类的引用
super.name//父类的name
super();//父类构造函数,用于子类的构造函数第一步
super.buy();//父类的buy方法

五、继承优缺点

优势:隔离了用和作,在必定程度上增长了代码的复用性(可是不建议用继承来提升复用性,能够用关联或者依赖)
缺点:增长了程序的耦合性。

2、多态

调用父类的方法执行子类的方法。
父类的行为在不一样的子类上有不一样的体现

一、多态前提

继承
方法重写
父类引用指向子类

二、成员访问

成员变量 成员方法
编译父类,执行子类,没有报错 编译父类,执行子类,子类没有执行父类,父类没有报错

三、优缺点

优势:代码复用性,扩展性
缺点:不能使用子类的特有成员

四、转型

(1)、向上转型,父类引用指向子类

(2)、向下转型,父类类型转变为子类,强行转换

相关文章
相关标签/搜索