目录
一、知识点概念
-
继承:继承就是基于某个父类对对象的定义加以扩展,而产生新的子类定义,子类可以继承父类原来的某些定义,也可以增加原来父类中没有的定义,或覆盖父类中不满足子类需求的功能(从一般到特殊的过程)。
- 继承的作用:
(1)提升代码的重复使用;
(2)表现出一种体系(层次)关系(在Java API文档中可以看到体现)。
- 继承的作用:
-
封装:隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读取和修改的访问级别。
- 个人的理解:封装就是要做到将字段私有化,将方法尽可能的私有化,对外暴露便捷的公共方法供外界访问本类中的其他成员,封装可以提高本类的内聚性,降低类之间的耦合性。
- 继承破坏封装性:(我对这个不是很理解在网上找到了几种说法罗列在下面供各位参考)
(1)继承时可以一定程度上(根据权限)访问父类内部实现细节和方法,违背了封装的定义;
(2)对父类的修改直接影响到了子类,体现了对封装的影响,所以在软件设计上优先考虑使用组合,再考虑继承;
(3)是因为属性的访问修饰符被修改,使得属性在本包和子类里可以任意修改属性的数据,数据的安全性从而得不到保障。
-
多态:多态就是把子类对象赋值给父类(实现的接口)类型的变量,在编译时期是以父类(或接口)类型为标准去编译,在运行时是以父类(或接口)变量的真实类型去运行的,在编译时期可以屏蔽子类之间的实现差异,从而做到通用编程,也起到了代码复用的功能。
- 解释对象的两种类型:有代码(SuperClass sc = new SubClass();)SubClass继承与SuperClass。
- 对象 sc 有两种类型
(1)编译类型:声明对象变量的类型 ,既SuperClass类型;
(2)运行类型:对象的真实类型,既SubClass类型。
- 对象 sc 有两种类型
- 解释对象的两种类型:有代码(SuperClass sc = new SubClass();)SubClass继承与SuperClass。