随笔分类 -  Java设计模式

摘要:单例模式基本要点: 用于确保一个类只有一个实例,并且这个实例易于被访问。 让类自身负责保存他的唯一实例。这个类可以保证没有其他实例创建,并且他可以提供一个访问实例的方法,来实现单例模式。 (1)把构造方法声明为 private ,确保只能由自己创建,避免外部创建实例或被子类继承从而创建额外实例。 ( 阅读全文
posted @ 2017-08-01 18:34 千彧 阅读(698) 评论(0) 推荐(0)
摘要:建造者模式将一个复杂对象的构建与其表示分离。 将复杂对象进行框架化,将同类的对象编造进同一个制造流程。同类·对象会有一样的框架。 而由于各部分的实现细节有所不同,所生产出来的产品会有所不同。从而有不同的·表示。 建造者模式是一步一步创建一个复杂对象的,它允许用户只通过指定复杂对象的类型和内容就可以不 阅读全文
posted @ 2017-08-01 17:56 千彧 阅读(470) 评论(0) 推荐(0)
摘要:不管是简单工厂模式还是工厂方法模式,在整个模式中只能有一个抽象产品,但在现实生活中,一个工厂只创建单个产品的例子很少,因为现在的工厂都是多元化发展。 (1)产品等级结构:即产品的继承结构,如一个抽象类时电视机,其子类又海尔电视机,海信电视机、TCL电视机,则抽象电视机鱼具体电视机之间构成了一个产品等 阅读全文
posted @ 2017-08-01 17:09 千彧 阅读(214) 评论(0) 推荐(0)
摘要:在简单工厂模式的基础上对工厂进行抽象化,不同的产品对应不同的具体工厂,客户端拿到工厂实例。 克服了简单工厂模式违背开闭原则。但在添加新产品时需要增加产品以及对应的工厂·增加负复杂度,给系统带来额外开销. 抽象产品类 具体产品类 抽象工厂类 1 public interface Fishfactory 阅读全文
posted @ 2017-08-01 12:27 千彧 阅读(140) 评论(0) 推荐(0)
摘要:客户端无需知道类名,只需了解参对应数。 通过引入配置文件,无需修改客户端即可添加产品。 工厂类集合了所有的逻辑,一旦不能正常工作,整个系统都受影响。 系统扩展困难,一旦添加新产品久不得不修改工厂逻辑。 违背了严格意义的开闭原则 添加一种产品需要更改工厂。 抽象产品: 具体产品类: 简单工厂类: 客户 阅读全文
posted @ 2017-08-01 11:02 千彧 阅读(225) 评论(0) 推荐(0)