原型模式是指將類設計成可復制(克?。╊愋停^承Cloneable類,在調用時就可以直接通過clone()方法克隆已有對象生成新的對象。其優(yōu)點是使用clone()方法創(chuàng)建新對象時消耗的資源比使用new方法創(chuàng)建新對象時消耗的資源要少,因此采用原型方法可以提高性能,減少消耗。
以下一個實例說明原型模式的使用方法,如圖創(chuàng)建各類。PrototypeCapable接口類繼承Cloneable類,而Movie和show這兩個類實現PrototypeCapable接口,是具體的可復制原型類型。
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(); //返回超類的克隆
}
}
主函數調用方式:
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);
}
}
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。
舉報投訴
-
Cyclone
+關注
關注
0文章
54瀏覽量
30093 -
protothread
+關注
關注
1文章
3瀏覽量
2029
發(fā)布評論請先 登錄
相關推薦
JavaScript中的Object
次,所以 sayName 方法的引?指向的是同一個堆內存對象?!?書中是這樣寫的:使?動態(tài)原型模式時,不能使用對象字?量重寫原型。前面已經解釋過了,如果在已經創(chuàng)建了
發(fā)表于 09-18 09:05
pspice的使用方法說明
pspice的使用方法
一、PSPICE簡介電路描述集成環(huán)境有關規(guī)定二、實例功率放大器電路仿真例題及練習
發(fā)表于 11-16 13:00
?0次下載
什么是菊花鏈模式 星型模式
什么是菊花鏈模式 星型模式 菊花鏈模式 菊花鏈模式是簡化的級聯模式,主要的優(yōu)點是提供集中管理的擴展端口,對于
發(fā)表于 12-05 09:00
?8532次閱讀
基于施耐德PLC編程軟件Unity Poxl 3.0使用方法
本文敘述了施耐德PLC編程軟件Unity Poxl 3.0具體使用方法,詳細講述了軟件的安裝過程,怎樣創(chuàng)建一個工程,最后以一個流程等
發(fā)表于 10-13 16:44
?6次下載
嵌入式 C 語言之原型模式應用
原型模式(Prototype Pattern),是屬于創(chuàng)建型模式的一種。原型模式主要是使用了原型對象實例
發(fā)表于 01-12 11:14
?299次閱讀
設計模式創(chuàng)造性:原型模式
原型模式(Prototype Pattern)是用于創(chuàng)建重復的對象,同時又能保證性能。這種類型的設計模式屬于創(chuàng)建型模式,它提供了一種創(chuàng)建對象的最佳方式。
wps的vlookup函數的使用方法及實例
WPS Office是一款功能全面的辦公軟件,其中的VLOOKUP函數在數據分析和處理中非常常用。在本文中,我們將詳細介紹WPS Office中VLOOKUP函數的使用方法,并提供一些實例
sumif函數求和的使用方法及實例
按照上述的語法填寫好函數的參數即可。下面,我們通過幾個實例來詳細介紹Sumif函數的使用方法。 實例一: 假設我們有一
評論