继承
-
继承是描述类与类之间的所属关系,通过类的继承可以形成一个关系体系;
-
继承的本质是对某一类的抽象,从而实现对现实世界更好的建模
-
一个为子类(派生类),一个为父类(基类),子类继承父类,从而达到子类重复利用父类的属性及方法的目的,使用关键字extends来表示
-
格式:修饰符 class 子类名 extends 父类名{};extends的意思是“扩展”,子类是父类的扩展
①类的继承不改变类成员的访问权限,子类不能继承父类的构造方法,私有属性以及私有方法,
但有对应的成员变量,利用父类公开的setter\getter接口对私有属性进行操作;
父类的私有方法无法使用,但子类可以进行重写;
②子类定义与父类同名的变量,优先使用自己的
③子类定义与父类同名的变量,如果想要使用父类的成员变量,使用关键字super来调用;
-
final类不能被继承,表示最终的类
-
Java中类只有单继承,没有多继承(接口可以变相实现多继承)
-
子类和父类之间,从意义上讲应该具有“is a”的关系
-
所有的类都是子类,除object之外,object是所有类的默认(或者直接或间接)父类
public:公共的 protected:受保护的 default:默认的 private:私有的
-
ctrl + h:显示继承树
-
继承的优点:
-
实现代码共享,减少创建类的工作量,使子类可以拥有父类的方法和属性。
-
提高代码维护性和可重用性
-
提高代码的可扩展性,更好的实现父类的方法。
-
继承的缺点:
-
继承是侵入性的。只要继承,就必须拥有父类的非私有属性和方法
-
降低代码灵活性。子类拥有父类的属性和方法后就多了些约束
-
增强代码耦合性。当父类的常量、变量和方法被修改时,需要考虑子类的修改,有可能会导致大段的代码需要重构
浙公网安备 33010602011771号