吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

用一個實例說明原型模式的使用方法

冬至子 ? 來源:全棧開發的碼農 ? 作者:全棧開發的碼農 ? 2023-06-01 14:18 ? 次閱讀

原型模式是指將類設計成可復制(克隆)類型,繼承Cloneable類,在調用時就可以直接通過clone()方法克隆已有對象生成新的對象。其優點是使用clone()方法創建新對象時消耗的資源比使用new方法創建新對象時消耗的資源要少,因此采用原型方法可以提高性能,減少消耗。

以下一個實例說明原型模式的使用方法,如圖創建各類。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);
  }
}
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Cyclone
    +關注

    關注

    0

    文章

    54

    瀏覽量

    30133
  • protothread
    +關注

    關注

    1

    文章

    3

    瀏覽量

    2043
收藏 人收藏

    評論

    相關推薦

    STM32_V3.4固件庫使用方法實例

    STM32_V3.4固件庫使用方法實例修訂版.:
    發表于 05-08 10:29

    emWin實例速成教程001_GUIBuilder的使用方法

    emWin實例速成教程001_GUIBuilder的使用方法
    發表于 11-06 10:53

    JavaScript中的Object

    次,所以 sayName 方法的引?指向的是同一個堆內存對象。● 書中是這樣寫的:使?動態原型模式時,不能使用對象字?量重寫原型。前面已經解釋過了,如果在已經創建了
    發表于 09-18 09:05

    pspice的使用方法說明

    pspice的使用方法 、PSPICE簡介電路描述集成環境有關規定二、實例功率放大器電路仿真例題及練習
    發表于 11-16 13:00 ?0次下載

    什么是菊花鏈模式型模式

    什么是菊花鏈模式型模式 菊花鏈模式   菊花鏈模式是簡化的級聯模式,主要的優點是提供集中管理的擴展端口,對于
    發表于 12-05 09:00 ?8564次閱讀

    種多類原型模糊聚類的初始化方法

    種多類原型模糊聚類的初始化方法 模糊聚類是非監督模式分類的重要分支,在
    發表于 10-21 16:02 ?1030次閱讀

    示波器的使用方法

    數字萬使用方法和示波器的使用方法詳解。
    發表于 03-14 10:38 ?32次下載

    基于施耐德PLC編程軟件Unity Poxl 3.0使用方法

    本文敘述了施耐德PLC編程軟件Unity Poxl 3.0具體使用方法,詳細講述了軟件的安裝過程,怎樣創建工程,最后以流程等
    發表于 10-13 16:44 ?6次下載
    基于施耐德PLC編程軟件Unity Poxl 3.0<b class='flag-5'>使用方法</b>

    數字萬表的使用方法

    數字萬表的使用方法介紹。
    發表于 06-16 16:23 ?31次下載

    設計模式之結構型模式

    結構型模式、適配器模式)定義:適配器模式(Adapter Pattern)是作為兩不兼容
    發表于 11-06 17:51 ?1次下載
    設計<b class='flag-5'>模式</b>之結構<b class='flag-5'>型模式</b>

    嵌入式 C 語言之原型模式應用

    原型模式(Prototype Pattern),是屬于創建型模式種。原型模式主要是使用了原型對象實例
    發表于 01-12 11:14 ?334次閱讀

    設計模式創造性:原型模式

    原型模式(Prototype Pattern)是用于創建重復的對象,同時又能保證性能。這種類型的設計模式屬于創建型模式,它提供了種創建對象的最佳方式。
    的頭像 發表于 06-09 15:25 ?630次閱讀
    設計<b class='flag-5'>模式</b>創造性:<b class='flag-5'>原型模式</b>

    各類設計模式及實現

    。最近看設計模式的書,對于每個模式C++寫了小例子,加深下理解。 、設計
    的頭像 發表于 11-11 11:45 ?796次閱讀
    各類設計<b class='flag-5'>模式</b>及實現

    wps的vlookup函數的使用方法實例

    WPS Office是款功能全面的辦公軟件,其中的VLOOKUP函數在數據分析和處理中非常常用。在本文中,我們將詳細介紹WPS Office中VLOOKUP函數的使用方法,并提供實例
    的頭像 發表于 12-01 10:58 ?4103次閱讀

    sumif函數求和的使用方法實例

    按照上述的語法填寫好函數的參數即可。下面,我們通過幾個實例來詳細介紹Sumif函數的使用方法實例: 假設我們有
    的頭像 發表于 12-03 10:36 ?1916次閱讀
    bet365手机客户端| 新花园百家乐官网的玩法技巧和规则| 大发888手机版亚洲城| 百家乐双峰县| 足球百家乐投注| 哪个百家乐最好| 百家乐官网打水论坛| 百家乐官网下注所有组合| www.18lk.com| 金龙娱乐城开户送彩金| 威尼斯人娱乐网网上百家乐的玩法技巧和规则 | 网上百家乐官网是真的| 网上百家乐官网导航| 百家乐官网视频二人麻将| 百家乐官网所有技巧| 百家乐官网闲庄概率| 百家乐官网网娱乐城| 百家乐官网路单资料| 百家乐官网是否有路子| 免费百家乐官网游戏机| 圣淘沙百家乐官网现金网| 百家乐官网必胜| 百家乐官网下注稳赢法| 博彩百家乐官网软件| 澳门百家乐官网看路博客| 百家乐官网双层筹码盘| 百家乐官网赌场凯时娱乐| 百家乐官网轮盘技巧| 伯爵百家乐官网娱乐网| 百家乐官网策略大全| 博彩百家乐官网画谜网| 百家乐官网技巧介绍| 新2百家乐现金网百家乐现金网| 百家乐半圆桌| 路单百家乐的玩法技巧和规则 | 太阳百家乐路单生| 大发888真钱游戏祖比| 博彩现金网| 百家乐官网太阳城球讯网| 澳门百家乐官网的赢钱不倒翁| 大世界百家乐官网赌场娱乐网规则 |