2019年6月5日
摘要: 在面向对象编程中, 最通常的方法是一个new操作符产生一个对象实例,new操作符就是用来构造对象实例的。但是在一些情况下, new操作符直接生成对象会带来一些问题。举例来说, 许多类型对象的创造需要一系列的步骤: 你可能需要计算或取得对象的初始设置; 选择生成哪个子对象实例; 或在生成你需要的对象之 阅读全文
posted @ 2019-06-05 17:19 sallyiszxm 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 单例模式有七种写法 这里只介绍懒汉、饿汉,面试的时候经常问 单例模式的特点 懒汉模式(线程不安全) 懒汉模式,顾名思义就是懒,没有对象需要调用它的时候不去实例化,有人来向它要对象的时候再实例化对象,因为懒,比我还懒 //懒汉式单例类.在第一次调用的时候实例化自己 public class Singl 阅读全文
posted @ 2019-06-05 17:00 sallyiszxm 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 创建型模式的主要关注点是“怎样创建对象?”,它的主要特点是“将对象的创建与使用分离”。这样可以降低系统的耦合度,使用者不需要关注对象的创建细节,对象的创建由相关的工厂来完成。就像我们去商场购买商品时,不需要知道商品是怎么生产出来一样,因为它们由专门的厂商生产。创建型模式分为以下几种。 单例(Sing 阅读全文
posted @ 2019-06-05 15:00 sallyiszxm 阅读(584) 评论(0) 推荐(0) 编辑
摘要: 合成复用原则的定义 合成复用原则(Composite Reuse Principle,CRP)又叫组合/聚合复用原则(Composition/Aggregate Reuse Principle,CARP)。它要求在软件复用时,要尽量先使用组合或者聚合等关联关系来实现,其次才考虑使用继承关系来实现。如 阅读全文
posted @ 2019-06-05 14:59 sallyiszxm 阅读(345) 评论(0) 推荐(0) 编辑
摘要: 迪米特法则的定义 迪米特法则(Law of Demeter,LoD)又叫作最少知识原则(Least Knowledge Principle,LKP),产生于 1987 年美国东北大学(Northeastern University)的一个名为迪米特(Demeter)的研究项目,由伊恩·荷兰(Ian 阅读全文
posted @ 2019-06-05 14:58 sallyiszxm 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 接口隔离原则的定义 接口隔离原则(Interface Segregation Principle,ISP)要求程序员尽量将臃肿庞大的接口拆分成更小的和更具体的接口,让接口中只包含客户感兴趣的方法。2002 年罗伯特·C.马丁给“接口隔离原则”的定义是:客户端不应该被迫依赖于它不使用的方法(Clien 阅读全文
posted @ 2019-06-05 14:58 sallyiszxm 阅读(430) 评论(0) 推荐(0) 编辑
摘要: 单一职责原则的定义 单一职责原则(Single Responsibility Principle,SRP)又称单一功能原则,由罗伯特·C.马丁(Robert C. Martin)于《敏捷软件开发:原则、模式和实践》一书中提出的。这里的职责是指类变化的原因,单一职责原则规定一个类应该有且仅有一个引起它 阅读全文
posted @ 2019-06-05 14:58 sallyiszxm 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 依赖倒置原则的定义 依赖倒置原则(Dependence Inversion Principle,DIP)是 Object Mentor 公司总裁罗伯特·马丁(Robert C.Martin)于 1996 年在C++ Report 上发表的文章。依赖倒置原则的原始定义为:高层模块不应该依赖低层模块,两 阅读全文
posted @ 2019-06-05 14:57 sallyiszxm 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 里氏替换原则的定义 里氏替换原则(Liskov Substitution Principle,LSP)由麻省理工学院计算机科学实验室的里斯科夫(Liskov)女士在 1987 年的“面向对象技术的高峰会议”(OOPSLA)上发表的一篇文章《数据抽象和层次》(Data Abstraction and 阅读全文
posted @ 2019-06-05 14:56 sallyiszxm 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 在软件开发中,为了提高软件系统的可维护性和可复用性,增加软件的可扩展性和灵活性,程序员要尽量根据 7 条原则来开发程序,从而提高软件开发效率、节约软件开发成本和维护成本。我们将在下面的几节中依次来介绍这 7 条原则,本节首先介绍开闭原则。 开闭原则的定义 开闭原则(Open Closed Princ 阅读全文
posted @ 2019-06-05 14:55 sallyiszxm 阅读(412) 评论(0) 推荐(0) 编辑