面向对象

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

 

1、封装

封装是面向对象的特征之一,是对象和类概念的主要特性。封装就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。

 

2、继承

继承是面向对象编程(OOP)语言的一个主要功能。继承是指一种能力:它可以使现有类的所有功能,子类可以来直接继承使用,并在无需重新编写原来类的情况下对这些功能进行扩展 。

 

3、多态

 多态性是允许你将父对象设置成为一个或多个子对象相等的技术,父对象通过赋值不同子对象类型指针的运作方式,来实现不同的运作方式。

 

面向对象可以使你的程序更加可维护、可复用、可扩展及更具灵活性。



面向对象的好处

 

使用面向对象思想进行开发有以下优点:
1、易维护
采用面向对象思想设计的结构,可读性高,由于继承的存在,即使改变需求,那么维护也只是在局部模块,所以维护起来是非常方便和较低成本的。
2、质量高
在设计时,可重用现有的,在以前的项目的领域中已被测试过的类使系统满足业务需求并具有较高的质量。
3、效率高
在软件开发时,根据设计的需要对现实世界的事物进行抽象,产生类。使用这样的方法解决问题,接近于日常生活和自然的思考方式,势必提高软件开发的效率和质量。
4、易扩展
由于继承、封装、多态的特性,自然设计出高内聚、低耦合的系统结构,使得系统更灵活、更容易扩展,而且成本较低。

 

面向对象设计的原则

       SRP 单一职责原则
        就一个类而言,应该仅有一个引起它变化的原因。

 

        OCP 开放————封闭原则
        软件实体(类、模块、函数等)应该是可以开展的,但是不可修改。
        
        LSP Liskov 替换原则

        子类型必须能够替换掉它们的父类型。

       DIP 依赖倒置原则
        抽象不应该依赖于细节。细节应该依赖于抽象。

        ISP 接口隔离原则
        不应该强迫客户依赖于它们不用的方法。接口属于客户,不属于它所在的类层次结构。

        REP 重用发布等价原则
        重用的粒度就是发布的粒度

        CCP 共同封闭原则
        包中的所有类对于同一类性质的变化应该是共同封闭的。一个变化若对一个包产生影响,则将对该包中的所有类产生影响,而对于其他的包不造成任何影响。

        CRP 共同重用原则
        一个包中的所有类应该是共同重用的。如果重用了包中的一个类,那么就要重用包中的所有类。

        ADP 无环依赖原则
        在包的依赖关系图中不允许存在环。

        SDP 稳定依赖原则
        朝着稳定的方向进行依赖

        SAP 稳定抽象原则
        包的抽象程度应该和其稳定程度一致。
 

原文地址:https://www.cnblogs.com/allenzhaox/p/3201789.html