面向对象的5大原则

面向对象的三大特征

①继承, 通过子类继承父类,达到复用父类的目的

②封装, 将属性和方法结合在一起,定义为一种类型,一般会将信息private化

③多态, 声明形式一致,实现方式不同,(体现方式:方法重载,方法重写),形参为父类,实参为任意子类对象

面向对象的五大基本原则(S-O-L-I-D,联想solid单词)

①单一原则((single responsibility principle)

  一个类只能有一个引起它变化的 原因

②开放关闭原则(open-closed principle)

  软件实体应该是可以扩展的,但不可修改的,即扩展开放,修改封闭

③里氏原则(Liskov-Substitution-Principle)

  只有子类能够替换基类,这样保证系统在运行期内能识别子类

④接口隔离原则(Interface-Segregation-Principle)

  使用专门的接口要比单个接口好的多,例如很多类似的方法都放在一个接口里,后期的实现与维护会变得复杂,(显得臃肿),使用专门的接口对应专门的方法就像因材施教

⑤依赖倒置原则(Dependence-Reverse-Principle)

  传统的结构化编程,最上面的模块通常都要依赖下面的子模块来实现,即高层依赖低层,现在就要逆转这种依赖关系,让高层模块不在依赖低层模块

原文地址:https://www.cnblogs.com/romulus/p/11018473.html

时间: 2024-11-08 22:46:43

面向对象的5大原则的相关文章

面向对象的十大原则

面向对象设计原则是OOPS(Object-Oriented Programming System,面向对象的程序设计系统)编程的核心,但大多数Java程序员追逐像Singleton.Decorator.Observer这样的设计模式,而不重视面向对象的分析和设计.甚至还有经验丰富的Java程序员没有听说过OOPS和SOLID设计原则,他们根本不知道设计原则的好处,也不知道如何依照这些原则来进行编程. 众所周知,Java编程最基本的原则就是要追求高内聚和低耦合的解决方案和代码模块设计.查看Apac

Java的开发—面向对象的7大原则之单一迪米特法则(六)

一.定义 迪米特法则,又叫最少知道原则(Least Knowledge Principle) 一个类应该保持对其他类最少的了解 也就是说:只与直接朋友交流,不和陌生人交流 朋友:每个对象都会与其他对象有耦合关系,只要两个对象之间有耦合关系,我们称之为朋友 耦合分为:依赖.关联.组合.聚合等等,我们称出现在成员变量.方法参数.方法返回值中的类为直接朋友,其他不是朋友.陌生类最好不要最为局部变量的形式出现在类的内部 二.示例 问题由来: 类与类之间的关系越紧密,他们的耦合度就越高,当一个类发生变化时

Java的开发—面向对象的7大原则之依赖倒置原则(一)

一.定义: 依赖倒置原则(Dependecy Inversion Principle) 原文为: High level modules shouldnot depend upon low level modules.Both should depend upon abstractions.Abstractions should not depend upon details. Details should depend upon abstractions 三层定义: 1.高层模块不应该依赖底层模

面向对象之两大要领 (转)

原文: http://cpper.info/2016/01/05/Two-Points-Of-Oriented-Object.html. 总览 在工作初期,我们可能会经常会有这样的感觉,自己的代码接口设计混乱.代码耦合较为严重.一个类的代码过多等等,自己回头看的时候都觉得汗颜.再看那些知名的开源库,它们大多有着整洁的代码.清晰简单的接口.职责单一的类,这个时候我们通常会捶胸顿足而感叹:什么时候老夫才能写出这样的代码! 作为新手,我们写的东西不规范或者说不够清晰的原因是缺乏一些指导原则.我们手中挥

面向对象编程6大设计原则:单一职责原则

单一职责原则(Single  Responsibility Principle)简称SRP原则. 定义 应该有且仅有一个原因引起类的变更. 优点 可以降低类的复杂度,一个类只负责一项职责,其逻辑肯定要比负责多项职责简单的多: 提高类的可读性,提高系统的可维护性: 变更引起的风险降低,变更是必然的,如果单一职责原则遵守的好,当修改一个功能时,可以显著降低对其他功能的影响. 说明 单一职责原则不只是面向对象编程思想所特有的,只要是模块化的程序设计,都适用单一职责原则: 单一职责原则要根据项目的实际情

php面向对象单例模式、工厂模式及6大原则

一.单例模式目的:为了控制对象的数量(只能够有一个,相当于类的计划生育)做法1.将类的构造函数做成私有的2.在类里面做了一个公有的函数来造对象3.将该函数变为静态的4.在函数里面加控制 class Ren { public $name; static public $dx; //静态成员变量用来存储该对象 private function __construct() //把构造函数设置为私有,类的外部就不能用new造对象了 { } static function DuiXiang() //做一个

设计模式6大原则

单一职责原则 里氏替换原则 依赖倒置原则 接口隔离原则 迪米特法则 开闭原则 设计模式六大原则(1):单一职责原则 定义:不要存在多于一个导致类变更的原因.通俗的说,即一个类只负责一项职责. 问题由来:类T负责两个不同的职责:职责P1,职责P2.当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障. 解决方案:遵循单一职责原则.分别建立两个类T1.T2,使T1完成职责P1功能,T2完成职责P2功能.这样,当修改类T1时,不会使职责P2发生故障风险:同理,当修

软件设计6大原则

1.开闭-原则:对于一个软件实体(类,模块,函数等)来说,应该可以扩展,但不可以修改. 对于扩展是开放的(Open for extension),对于更改是封闭的(Closed for modification). 2.单一职责原则(SRP):就一个类而言,应该仅有一个引起它变化的原因. 软件设计就是要发现职责并且把这些职责相互分离,如果你可以想到多于一个的动机去改变一个类,那么这个类就具有多于一个的职责,就应该考虑类的职责分离. 3.迪米特法则 4.里氏代换原则 子类必须能够替换掉其父类. 例

设计模式之6大原则(5)-迪米特法则

迪米特法则(Law of Demeter)又叫作最少知识原则(Least Knowledge Principle 简写LKP),就是说一个对象应当对其他对象有尽可能少的了解,不和陌生人说话.英文简写为: LoD. 迪米特法则可以简单说成:talk only to your immediate friends. 对于面向OOD来说,又被解释为下面几种方式:一个软件实体应当尽可能少的与其他实体发生相互作用.每一个软件单位对其他的单位都只有最少的知识,而且局限于那些与本单位密切相关的软件单位. 迪米特