封装、继承、多态的优缺点

您所在的位置:网站首页 自己三个优点和缺点 封装、继承、多态的优缺点

封装、继承、多态的优缺点

2024-06-03 03:40| 来源: 网络整理| 查看: 265

面向对象的三大特征:封装、继承、多态

封装:每个对象都包含它能进行操作所需要的所有信息,这个特征成为封装。

封装的好处:

(1)良好的封装能够减少耦合(代码与界面)

(2)类内部的实现可以自由修改的

(3)类具有清晰的对外接口(确定内容的访问属性,是公有还是私有;字段是只读、只写或者是可读可写等)

继承:使子类拥有父类非private的属性和功能,子类还具有自己的属性和功能,同时子类还可以改写父类中的功能(方法重写、与多态有关)

继承的好处:

(1)继承使得所有的子类的公共部分都放在了父类中,使得代码得到了共享。提高了代码的重用性,避免了重复。

(2)继承可使得修改或扩展继承而来的实现都较为容易

(3)使类与类之间产生联系,为多态提供了前提

继承的缺点:

(1)继承具有入侵性(即继承必须拥有父类的所有非私有属性和方法)

(2)父类变,子类变

(2)继承破坏封装,父类实现细节暴露给子类,增大了两个类之间的耦合性

耦合性也叫块间关系。指软件系统结构中各个模块间相互联系紧密程度的一种量度。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差,模块间耦合的高低取决于模块间杰克的复杂性,调用的方式以及传递的信息。例如在这里继承就是一种类和类之间强耦合的关系。

多态(面向对象的核心):指相同的操作或者函数、过程可作用于多种类型的对象上并获得不同的结果;不同的对象,收到同一消息可以产生不同的结果。多态性通过派生类重载基类中的虚函数型方法来实现。

多态的前提:

(1)必须要有抽象类或者接口,或者说要有抽象方法或者接口方法

(2)子类继承了抽象类或者接口,并且对抽象类或接口中的抽象方法进行了重写

(3)子类对象必须赋给父类对象,用父类对象去调用子类对象中重写的抽象方法

多态的优点:

(1)提高了代码的维护性(继承保证)

(2)提高了代码的可扩展性(有多态保证)

多态需要注意的地方:

(1)要实现多态,对象的声明必须是父类,而不是子类,实例化的对象是子类

(2)虚方法是按照其运行时的类型而非编译时类型进行动态绑定调用的

静态多态性和动态多态性:

(1)静态多态性——编译时的多态性

实现方式:重载

(2)动态多态性——运行时的多态性(只直到系统运行时,才根据实际情况决定实现何种操作)

实现方式:虚函数



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3