做二手平台公益的网站,企业邮箱安全吗,上传图片的网站要怎么做,沧州网站建设选网龙1.单一职责原则 单一职责原则#xff08;SRP#xff1a;Single responsibility principle#xff09;又称单一功能原则 核心#xff1a;解耦和增强内聚性#xff08;高内聚#xff0c;低耦合#xff09;。 描述#xff1a; 类被修改的几率很大#xff0c;因此应该专注…1.单一职责原则 单一职责原则SRPSingle responsibility principle又称单一功能原则 核心解耦和增强内聚性高内聚低耦合。 描述 类被修改的几率很大因此应该专注于单一的功能。如果你把多个功能放在同一个类中 功能之间就形成了关联改变其中一个功能有可能中止另一个功能这时就需要新一轮的测试来避免可能出现的问题。 2.里氏替换原则 里氏替换原则LSPLiskov Substitution Principle 核心 在任何父类出现的地方都可以用他的子类来替代子类应当可以替换父类并出现在父类能够出现的任何地方 四层含义 1子类必须完全实现父类的方法。在类中调用其他类是务必要使用父类或接口如果不能使用父类或接口则说明类的设计已经违背了LSP原则。 2子类可以有自己的个性。子类当然可以有自己的行为和外观了也就是方法和属性 3覆盖或实现父类的方法时输入参数可以被放大。即子类可以重载父类的方法但输入参数应比父类方法中的大这样在子类代替父类的时候调用的仍然是父类的方法。 即以子类中方法的前置条件必须与超类中被覆盖的方法的前置条 件相同或者更宽松。 4覆盖或实现父类的方法时输出结果可以被缩小。 3.依赖注入原则 依赖注入原则DIPDependence Inversion Principle 别名依赖倒置原则或依赖反转原则 核心要依赖于抽象不要依赖于具体的实现 三层含义 1高层模块不应该依赖低层模块两者都应该依赖其抽象抽象类或接口 2抽象不应该依赖细节具体实现 3细节具体实现应该依赖抽象。 三种实现方式 1、通过构造函数传递依赖对象 2、通过setter方法传递依赖对象 3、接口声明实现依赖对象 在Java中的表现 1模块间的依赖是通过抽象发生实现类之间不发生直接的依赖关系其依赖关系是通过接口或抽象类产生的 2接口或抽象类不依赖于实现类 3实现类依赖接口或抽象类 4.开闭原则 开闭原则OCPOpen Closed Principle 核心思想对扩展开放对修改关闭。即在设计一个模块的时候应当使这个模 块可以在不被修改的前提下被扩展。 根据开闭原则在设计一个软件系统模块类方法的时候应该可以在不修改原有的模块修改关闭的基础上能扩展其功能扩展开放。 扩展开放 某模块的功能是可扩展的则该模块是扩展开放的。软件系统的功能上的可扩展性要求模块是扩展开放的。 修改关闭 某模块被其他模块调用如果该模块的源代码不允许修改则该模块修改关闭的。软件系统的功能上的稳定性持续性要求是修改关的。 5.接口分离原则 接口分离原则(ISPInterface Segregation Principle) 核心思想 不应该强迫客户程序依赖他们不需要使用的方法。 接口分离原则的意思就是一个接口不需要提供太多的行为一个接口应该只提供一种对外的功能不应该把所有的操作都封装到一个接口当中. 分离接口的两种实现方法 1.使用委托分离接口。Separation through Delegation 2.使用多重继承分离接口。Separation through Multiple Inheritance 6.合成复用原则 合成复用原则CRPComposite Reuse Principle 核心思想 尽量使用对象组合而不是继承来达到复用的目的。该原则就是在一个新的对象里面使用一些已有的对象 使之成为新对象的一部分新的对象通过向这些对象的委派达到复用已有功能的目的。 复用的种类 1.继承 2.合成聚合 注在复用时应优先考虑使用合成聚合而不是继承 7.迪米特原则 迪米特原则LODLaw of Demeter 又叫最少知识原则 核心思想 一个对象应当对其他对象有尽可能少的了解,不和陌生人说话。 类间解耦低耦合意思就是降低各个对象之间的耦合提高系统的可维护性在模块之间只通过接口来通信 而不理会模块的内部工作原理可以使各个模块的耦合成都降到最低促进软件的复用 注 1.在类的划分上应该创建有弱耦合的类 2.在类的结构设计上每一个类都应当尽量降低成员的访问权限 3.在类的设计上只要有可能一个类应当设计成不变 4.在对其他类的引用上一个对象对其它对象的引用应当降到最低 5.尽量降低类的访问权限 6.谨慎使用序列化功能 7.不要暴露类成员而应该提供相应的访问器(属性) UML统一建模语言java中七种设计原则 UML统一建模语言。 类与类类和接口接口和接口之间的关系。 1、实现关系一个类实现一个接口 2、泛化关系一个类继承另一个类 3、关联1、依赖关系一个类是另一个类的方法局部变量方法的参数或方法返回值。2、聚合关系一个类是另一个类的属性是整体和部分的关系。3、组合关系:一个类是另一个类的属性是整体不可分割的一部分是强聚合。 4、单一职责一个类而言应该仅有一个引起它变化的原因永远不要让一个类存在多个改变的理。一个类只应该做和一个任务相关的业务不应该把过多的业务放在一个类中完成。 迪米特法则 一个软件实体应当尽可能少的与其他实体发生相互作用。