原型模式是指將類設(shè)計(jì)成可復(fù)制(克?。╊愋?,繼承Cloneable類,在調(diào)用時(shí)就可以直接通過clone()方法克隆已有對(duì)象生成新的對(duì)象。其優(yōu)點(diǎn)是使用clone()方法創(chuàng)建新對(duì)象時(shí)消耗的資源比使用new方法創(chuàng)建新對(duì)象時(shí)消耗的資源要少,因此采用原型方法可以提高性能,減少消耗。
以下一個(gè)實(shí)例說明原型模式的使用方法,如圖創(chuàng)建各類。PrototypeCapable接口類繼承Cloneable類,而Movie和show這兩個(gè)類實(shí)現(xiàn)PrototypeCapable接口,是具體的可復(fù)制原型類型。

PrototypeCapable接口類:
package prototype;
public interface PrototypeCapable extends Cloneable{
PrototypeCapable clone() throws CloneNotSupportedException;
}
Movie具體原型類:
package prototype;
public class Movie implements PrototypeCapable{
@Override
public Movie clone() throws CloneNotSupportedException{
System.out.println(this);
return (Movie)super.clone(); //返回超類的克隆
}
}
Show具體原型類:
package prototype;
public class Show implements PrototypeCapable{
@Override
public Show clone() throws CloneNotSupportedException{
System.out.println(this);
return (Show)super.clone(); //返回超類的克隆
}
}
主函數(shù)調(diào)用方式:
package main;
import prototype.*;
public class ProtoType {
public static void main(String[] args) throws CloneNotSupportedException {
//電影類原型
Movie moviePrototype = new Movie();
//克隆電影類原型
Movie movie = moviePrototype.clone();
System.out.println(moviePrototype);
System.out.println(movie);
//演出類原型
Show showPrototype = new Show();
//克隆演出類原型
Show show = showPrototype.clone();
System.out.println(showPrototype);
System.out.println(show);
}
}
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
-
Cyclone
+關(guān)注
關(guān)注
0文章
55瀏覽量
30997 -
protothread
+關(guān)注
關(guān)注
1文章
3瀏覽量
2182
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
熱點(diǎn)推薦
pspice的使用方法說明
pspice的使用方法
一、PSPICE簡(jiǎn)介電路描述集成環(huán)境有關(guān)規(guī)定二、實(shí)例功率放大器電路仿真例題及練習(xí)
發(fā)表于 11-16 13:00
?0次下載
用DSP進(jìn)行語音壓縮的一個(gè)開發(fā)實(shí)例
用DSP進(jìn)行語音壓縮的一個(gè)開發(fā)實(shí)例(PCI總線)。
發(fā)表于 01-19 11:28
?13次下載
基于施耐德PLC編程軟件Unity Poxl 3.0使用方法
本文敘述了施耐德PLC編程軟件Unity Poxl 3.0具體使用方法,詳細(xì)講述了軟件的安裝過程,怎樣創(chuàng)建一個(gè)工程,最后以一個(gè)流程等
發(fā)表于 10-13 16:44
?6次下載
vlookup函數(shù)使用方法及實(shí)例
VLOOKUP函數(shù)是EXCEL最常用的查找函數(shù),VLOOKUP函數(shù)欄目有很多該函數(shù)的各種使用方法的教程,但還是有很多同學(xué)提問與該函數(shù)有關(guān)的問題。本文將常見的VLOOKUP函數(shù)相關(guān)問題總結(jié)一下,主要為VLOOKUP函數(shù)怎么用?如何
發(fā)表于 12-01 16:27
?6.9w次閱讀
設(shè)計(jì)模式之結(jié)構(gòu)型模式
結(jié)構(gòu)型模式一、適配器模式(一)定義:適配器模式(Adapter Pattern)是作為兩個(gè)不兼容
發(fā)表于 11-06 17:51
?1次下載
嵌入式 C 語言之原型模式應(yīng)用
原型模式(Prototype Pattern),是屬于創(chuàng)建型模式的一種。原型模式主要是使用了原型對(duì)象實(shí)例
發(fā)表于 01-12 11:14
?715次閱讀
設(shè)計(jì)模式創(chuàng)造性:原型模式
原型模式(Prototype Pattern)是用于創(chuàng)建重復(fù)的對(duì)象,同時(shí)又能保證性能。這種類型的設(shè)計(jì)模式屬于創(chuàng)建型模式,它提供了一種創(chuàng)建對(duì)象的最佳方式。
各類設(shè)計(jì)模式及實(shí)現(xiàn)
。最近看設(shè)計(jì)模式的書,對(duì)于每個(gè)模式,用C++寫了個(gè)小例子,加深一下理解。 一、設(shè)計(jì)
wps的vlookup函數(shù)的使用方法及實(shí)例
WPS Office是一款功能全面的辦公軟件,其中的VLOOKUP函數(shù)在數(shù)據(jù)分析和處理中非常常用。在本文中,我們將詳細(xì)介紹WPS Office中VLOOKUP函數(shù)的使用方法,并提供一些實(shí)例
sumif函數(shù)求和的使用方法及實(shí)例
按照上述的語法填寫好函數(shù)的參數(shù)即可。下面,我們通過幾個(gè)實(shí)例來詳細(xì)介紹Sumif函數(shù)的使用方法。 實(shí)例一: 假設(shè)我們有一
用一個(gè)實(shí)例說明原型模式的使用方法
評(píng)論