`

设计模式:原型模式

阅读更多

当你频繁需要创建同类或者相似的对象实例的时候可以使用原型设计模式。原型设计模式就是克隆一个对象实例,再设置可改变的特征,就得到了一个相似或者同类的对象实例。这样可以减少资源的消耗。思考下,为什么能减少资源消耗。

1、原型模式类图



 2、代码实例

package com.leon.prototype;

/**
 * 设计模式——原型模式,实例代码
 * 
 * @author leon
 * 
 */
public class ProtoTypeTest {

	//创建大量相似的对象实例
	public static void main(String[] args) throws CloneNotSupportedException {
		A a = new A();
		for (int i = 0; i < 10; i++) {
			ProtoType prototype = (ProtoType) a.clone();
			prototype.setSize(i);
			System.out.println(prototype);
			prototype.printSize();
		}
	}
}

// 原型
interface ProtoType {
	void setSize(int x);

	void printSize();
}

//一个具体的类A
class A implements ProtoType, Cloneable {

	private int size;

	@Override
	public void setSize(int x) {
		// TODO Auto-generated method stub
		this.size = x;
	}

	@Override
	public void printSize() {
		// TODO Auto-generated method stub
		System.out.println("size:" + this.size);
	}

	//原型模式的类,一定支持克隆
	@Override
	protected A clone() throws CloneNotSupportedException {
		// TODO Auto-generated method stub
		return (A) super.clone();
	}

}

 

  • 大小: 13.1 KB
分享到:
评论

相关推荐

    《设计模式:可复用面向对象软件的基础》英文版

    包括抽象工厂模式(Abstract Factory)、建造者模式(Builder)、工厂方法模式(Factory Method)、原型模式(Prototype)和单例模式(Singleton)等。 - **结构型模式**:关注于类或对象的组合方式,使它们能形成更...

    实验六:原型模式.rar

    原型模式是其中一种经典的设计模式,它属于创建型模式,主要应用于对象复制或克隆场景。在这个实验六:“原型模式.rar”中,我们将深入理解并实践如何在Java中实现原型模式。 首先,原型模式的核心思想是通过拷贝已...

    设计模式:可复用面向对象软件的基础--详细书签版

     “[设计模式]在实用环境下特别有用,因为它分类描述了一组设计良好,表达清楚的面向对象软件设计模式。整个设计模式领域还很新,本书的四位作者也许已占据了这个领域造诣最深的专家中的半数,因而他们定义模式的方法...

    设计模式:可复用的面向对象软件的基础

    常见的创建型模式有单例模式、工厂方法模式、抽象工厂模式、建造者模式和原型模式。 2. 结构型模式:这类模式关注如何组合类和对象以获得更大的结构,主要涉及如何将类或对象结合在一起形成更大的结构,但同时保持...

    设计模式课程设计---使用5个以上不同的设计模式完成(java)

    在本设计模式课程设计中,我们重点探讨了五个核心的设计模式:原型模式、单例模式、抽象工厂模式、代理模式和建造者模式。这些模式在Java编程中具有广泛的应用,能够帮助开发者创建更加灵活、可扩展和易于维护的代码...

    设计模式:可复用面向对象软件设计基础(附源码)

    1. **创建型模式**:如单例模式、工厂方法模式、抽象工厂模式、建造者模式和原型模式。它们关注对象的创建过程,使得代码在创建对象时更加灵活和可控。 2. **结构型模式**:如适配器模式、装饰器模式、代理模式、...

    Python 程序语言设计模式思路-创建型模式:原型模式:通过复制现有对象来创建新对象,面向对象编程

    原型模式(Prototype Pattern)作为创建型模式的一种,通过复制现有对象来创建新对象,从而避免了使用构造函数直接实例化对象的过程。

    设计模式之原型模式

    在客户端,我们可以这样使用原型模式: ```java public class PrototypeDemo { public static void main(String[] args) { Shape prototype = new Circle(); // 创建原型对象 Shape clonedShape1 = prototype....

    设计模式的原型模式的例子

    原型模式(Prototype Pattern)是软件设计模式中的一种结构型模式,它的主要目的是通过复制已有对象来创建新对象,从而减少创建新对象的成本。在原型模式中,类的实例化过程被替换为对已有实例的克隆操作,尤其适用...

    1.《设计模式:可复用面向对象软件的基础(完整书签)》

    总的来说,《设计模式:可复用面向对象软件的基础》是一本深入理解和应用面向对象设计的必备书籍,它不仅介绍了23种核心设计模式,还提供了大量实例和解释,帮助读者将理论知识转化为实际的编程技巧。通过对这本书的...

    白话讲解创建型设计模式:单例原型构建

    本文将聚焦于创建型设计模式,特别是单例模式和原型模式,这两种模式在对象的创建方面扮演着重要的角色。 单例模式是一种限制类实例化次数的设计模式,确保在整个应用程序中,一个类只有一个实例存在。这在某些场景...

    iOS设计模式之原型模式

    本文将深入探讨一种常见的设计模式——原型模式(Prototype Pattern),并结合具体的iOS应用场景进行解析。 原型模式是一种创建型设计模式,它的主要思想是通过复制已有对象来创建新对象,而不是通过构造函数来创建...

    android设计模式之原型模式

    本文将深入探讨Android设计模式中的“原型模式”(Prototype Pattern),并结合提供的"prototype"压缩包中的示例代码进行解析。 原型模式是一种创建型设计模式,它的主要思想是通过复制已有对象来创建新对象,而...

    C语言:原型模式及举例

    原型模式(Prototype Pattern)是一种创建型设计模式,它允许通过复制已有对象来创建新对象,而无需知道具体创建过程。在C语言中,由于没有内置的克隆机制,我们需要自定义函数来实现对象的复制。这一模式常用于减少...

    C#面向对象设计模式纵横谈(25):设计模式总结

    5. 原型模式:原型模式使用原型实例来创建新对象,通过克隆已有对象来减少创建新对象的开销。 6. 适配器模式:适配器模式允许两个不兼容的接口之间进行通信,通过创建一个适配器类,将旧的接口转换为新的接口,使得...

    设计模式:简单工厂、方法工厂、抽象工厂、单例、原型、委派、模板、代理、策略

    5. **原型**:原型模式是一种创建型设计模式,它通过复制已有对象来创建新对象,避免了复杂的初始化过程或重复的创建开销。 6. **委派**:委派模式是一种行为设计模式,它将请求从一个对象传递给另一个对象,让接收...

    model-arithmetic-parent:常用的数据结构,算法,设计模式的积累

    Java描述设计模式:原型模式 06 Java描述设计模式:建造者模式 07 Java描述设计模式:适配器模式 08 Java描述设计模式:桥接模式 09 Java描述设计模式:装饰模式 10 Java描述设计模式:组合模式 11 Java描述设计模式...

Global site tag (gtag.js) - Google Analytics