java设计模式之原型模式

原创 2016年08月30日 17:33:22

==============和上几篇一样,原型模式也是java设计语言中  关于 对象创建的模式之一==================

原型模式,即通过实现一个"克隆"接口,不需要进行new操作直接获取这个对象的一个全新实例

========1. 简单形式的原型模式

========2. 登记形式的原型模式

其中登记形式  就是简单形式多了一个对象管理器.存放通过克隆产生的对象. 方便客户端调用

而克隆又分为浅克隆和深度克隆

=============浅克隆 类似于 object 类的clone方法

=============深度克隆   可以用序列化和反序列化 实现========如下==============


 public  Object deepClone() throws IOException, ClassNotFoundException{
        //将对象写到流里
        ByteArrayOutputStream bos = new ByteArrayOutputStream();
        ObjectOutputStream oos = new ObjectOutputStream(bos);
        oos.writeObject(this);
        //从流里读回来
        ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray());
        ObjectInputStream ois = new ObjectInputStream(bis);
        return ois.readObject();
    }


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Java技术_每天掌握一种设计模式(006)_使用场景及简单实例(创建型:原型模式)

模式描述 用原型实例指定创建对象的种类,并且通过拷贝来创建新的对象。 2.模式作用 可以一定程度上解耦,消费者和对象的构造过程隔离开,对象如何构造与消费者完全无关。 可以一定程度提升效率,复杂对...

java设计模式学习笔记--原型模式(浅克隆和深克隆)

1. 什么是原型模式原型模式属于对象的创建模式。。原型模式允许你通过复制现有的实例来创建新的实例。 这个模式的重点在于,客户端的代码在不知道要实例化何种特定类的情况下,可以制造出新的实例。在java...

java设计模式5--原型模式(Prototype)

本文地址:http://www.cnblogs.com/archimedes/p/java-prototype-pattern.html,转载请注明源地址。 原型模式 用原型实例指定创建对...

java设计模式—原型模式

原型模式、Java设计模式

Java设计模式学习04——原型模式

原型模式  当我们需要构建一个与已经存在对象相似时,再通过new去产生一个新对象需要非常繁琐的数据准备或访问权限,而这时就可以用到原型模式,原型模式实现就是Java中的克隆技术,以某个对象为原型,复制...
  • xu__cg
  • xu__cg
  • 2016年10月26日 10:38
  • 471

java设计模式---Prototype Pattern---原型模式(复制建立对象)

在我们建立Something类的实例时,会使用下面的表达式:  new Something(); 利用new指定类名可以产生对象实例。但是在有些情况下不靠new来产生实例是方便和必要的: 1. ...
  • ydd326
  • ydd326
  • 2011年09月08日 16:40
  • 600

java设计模式---原型模式

用原型实例指定创建对象的种类,并且同过拷贝这些原型创建新的对象。 在java中提供了clone方法来实现对象的克隆,那么先看下clone应满足的条件(要实现克隆该类必需implements Clon...

设计模式学习笔记---原型模式prototype(Java版)

一、场景 克隆羊多利 二、本质 通过new产生一个对象需要非常繁琐的数据准备或访问权限,则可以使用原型模式节约时间。就是java中的克隆技术,以某个对象为原型,复制出新的对象。新的对象具备原型对...

java设计模式——原型模式(克隆)

java设计模式原型模式(克隆)

java设计模式---原型模式篇

1、什么是原型模式?       prototyp模式是一种对象创建型模式,它采取复制原型对象的方法来创建对象的实例。       使用 prototype模式创建的实例,具有与原型一样的数据 ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java设计模式之原型模式
举报原因:
原因补充:

(最多只允许输入30个字)