OO原则与面向对象三大特性

OO五大原则:编程

单一职责原则:
类的单一职责是说一个类应该只作一件事情,若是类中某个方法或属性与它所要完成的职责无关或是为了完成另外的职责那么这样的设计就不符合类的单一职责。而这样的设计的缺点是下降了类的内聚性加强了类的耦合性,另一个很客观的问题是当咱们使用这个类时把咱们本来不须要的功能也带到了咱们的代码中,从而是文件变大,增长内存开销。包括里面定义的变量越多越庸肿.设计

开闭原则
根据开闭原则,在设计一个软件系统模块(类,方法)的时候,应该能够在不修改原有的模块(修改关闭)的基础上,能扩展其功能(扩展开放)。对象

里氏替换原则继承

子类应当能够替换父类并出如今父类可以出现的任何地方接口

继承而且覆盖超类方法的时候,子类中的方法的可见性必须等于或者大于超类中的方法的可见性,子类中的方法所抛出的受检异常只能是超类中对应方法所抛出的受检异常的子类。内存

依赖倒置原则编译

DIP原则其实强调的是:不要让不常常发生变化的部分去依赖于常常发生变化的部分。简言之面向接口,或抽象编程。基础

即:要依赖于抽象,不要依赖于具体。简单的说,依赖倒置原则要求客户端依赖于抽象耦合。原则表述:抽象不该当依赖于细节;细节应当依赖于抽象;要针对接口编程,不针对实现编程。变量

接口隔离原则扩展

使用多个专门的接口比使用单一的总接口要好。
一个类对另一个类的依赖性应当是创建在最小的接口上的。
一个接口表明一个角色,不该当将不一样的角色都交给一个接口。没有关系的接口合并在一块儿,造成一个臃肿的大接口,这是对角色和接口的污染。

面向对象三大特性:
封装:把数据和操做数据的方法绑定起来,对数据的访问只能经过已定义的接口。面向对象的本质就是讲世界描绘成一系列彻底封闭的对象。编写类,就是对数据和数据操做的封装。是其余特性的基础。实现单一职责原则。

继承:从已知类获得继承信息建立新类的过程。继承让变化中的软件系统有必定的延续性,继承也是封装中可变因素的重要手段。

多态:容许不一样子类型的对象对同一消息做出不一样的响应,简言之:用一样的对象引用调用一样的方法可是作了不一样的事情。多态分为编译时多态和运行时多态。方法重载就是编译时多态。运行时多态是面向对象的精髓。实现多态的条件:1.方法重写,2对象造型。父类引用子类对象。多态是开闭原则,面向接口和抽象编程依赖倒置,里氏替换,接口隔离的基础。

2016-08-22

相关文章
相关标签/搜索