摘要:在学习Builder设计模式的时候 ,发现 这个Builder 和 工厂设计模式十分相似 ,我甚至说不出来他们之间有着什么样的区别,但可以肯定的是 ,如果我们需要产生一个复杂的对象,这个对象中包含多个其他的对象,以及属性等 。那么我们应该使用Builder 模式 ,Builder模式减少了 对象部件之间的耦合度 ,所谓的耦合度 也就是对象部件之间的联系 。其实说的再多也不如自己认真的分析一段代码 并且自己着手实现一个Builder原型 。 下面一段代码实现的功能 是产生一个 MyProduct 对象 这MyProduct对象中包含了 PartA PartB PartC三个对象 ,我们不是像以往
阅读全文
摘要:所谓的原型即给我们一个对象 我们就可以无限复制出这个对象的副本 ,而不是引用这个对象 。 复制出来的副本 是一个个独立的对象 , 绝不是 原来对象的引用 。这就要求设计到 java中的对象克隆技术 ,克隆的对象所在的类要实现Cloneable接口 以及覆盖 Object类的 clone()方法 。我们不能直接调用Object的clone方法 因为 Object类并没有实现 Cloneable接口 如果调用就会抛出 一个 CloneNotSupporteException异常表示不支持 对象克隆 。下面是一个 原型模式的简单例子: a=2a=2a==b为false上面是输出的结果可以看出来 ,对
阅读全文
摘要:1、 工厂模式 。比如有一个统一接口 A ,这个A接口是一个标准 。如果有类 B 和 C 那么 BC必须实现A接口 。我们在以往的 方法生成这种对象的时候 A b=new B() ; A c=new C() ;这样的方式来的 .但是如果不同的类需要不同的初始化的时候我们如果全部放在构造方法完成那么就严重破坏了 面向对象的概念 。 我们想要的就是一个工厂 Factory ,也就是一个代理 我们通过它的唯一接口来 产生不同类型的产品 。下面是一段代码 :1、一般的工厂interface Product //这里接口只是为了保证 返回的对象可以 统一用 Product接受 {void show()
阅读全文