继承 (extends)

在这里插入图片描述
继承 (extends):
继承是一个类派生出另一个类,被派生出的类称为父类,派生出的类称为子类。父类也称超类和积类,子类也称派生类。
创建子类对象是默认先调用父类构造方法,再调用子类构造方法。

1、符合 is-a 关系。
2、使用 extends 关键字。
3、代码复用。
不能被继承的父类成员:
1、private 成员
2、子类与父类不在同包,使用默认访问权限的成员。
3、构造方法。
一、方法重写:
1、方法名相同。
2、参数列表相同。
3、返回值类型相同或者是其子类。
4、访问权限不能严于父类。
二、访问修饰符:
1、private 私有的。
2、friendly 默认。
3、protected 保护的。
(1)、可以修饰属性和方法。
(2)、奔雷、同包、子类可以访问。
4、public 公共的。
三、super 关键字
1、super只能出现在子类的方法和构造方法中。
2、super调用构造方法时,只能是第一句。
3、super不能访问子类的private成员。
四、final 修饰符:
1、修饰的类,不能再被继承。
2、修饰的方法,不能被子类重写。
3、修饰的变量将变成常量,只能在初始化时进行赋值。
五、抽象类和抽象方法:
1、抽象类不能被实例化。
2、可以有0~多个抽象方法。
3、非抽象类必须重写父类的所有抽象方法。

abstract 也可用于方法——抽象方法
1、抽象方法没有方法体。
2、抽象方法必须在抽象类里。
3、抽象方法必须在子类中被实现,除非子类是抽象类。

抽象类的特征:
1、抽象类不能被实例化。
2、抽象类中的方法可以有方法体
(一般方法),也可以没有
(抽象方法)。
3、抽象方法必须在子类中实现
(必须被重写),
一般方法可以被重写,也可以不重写。
4、抽象方法必须在抽象类里。

发布了31 篇原创文章 · 获赞 0 · 访问量 365

猜你喜欢

转载自blog.csdn.net/weixin_45864941/article/details/103737565