国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

設(shè)計(jì)模式-工廠設(shè)計(jì)模式

這篇具有很好參考價(jià)值的文章主要介紹了設(shè)計(jì)模式-工廠設(shè)計(jì)模式。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

核心思想

  • 在簡(jiǎn)單工廠模式的基礎(chǔ)上進(jìn)一步的抽象化
  • 具備更多的可擴(kuò)展和復(fù)用性,增強(qiáng)代碼的可讀性
  • 使添加產(chǎn)品不需要修改原來(lái)的代碼,滿足開(kāi)閉原則

設(shè)計(jì)模式-工廠設(shè)計(jì)模式,設(shè)計(jì)模式,設(shè)計(jì)模式

優(yōu)缺點(diǎn)

優(yōu)點(diǎn)

  • 符合單一職責(zé),每個(gè)工廠只負(fù)責(zé)生產(chǎn)對(duì)應(yīng)的產(chǎn)品
  • 符合開(kāi)閉原則,添加產(chǎn)品只需添加對(duì)應(yīng)的產(chǎn)品類和工廠類
  • 使用者只需要知道產(chǎn)品抽象類,不需要關(guān)心其它實(shí)現(xiàn)類。滿足迪米特法則、依賴倒置原則里氏替換原則

缺點(diǎn)

  • 添加一個(gè)產(chǎn)品,需要實(shí)現(xiàn)對(duì)應(yīng)的工廠類和產(chǎn)品類
  • 每個(gè)產(chǎn)品需要有對(duì)應(yīng)的產(chǎn)品類和工廠類

代碼示例

產(chǎn)品抽象接口

/**
 * 支付類
 */
public interface Pay {

    /**
     * 統(tǒng)一下單
     */
    void unifiedorder();
}

抽象工廠


/**
 * 抽象工廠
 */
public interface IFactory {

    /**
     * 獲取支付類
     * @return
     */
    Pay getPay();
}

產(chǎn)品具體實(shí)現(xiàn)類

public class AliPay implements Pay{
    @Override
    public void unifiedorder() {
        System.out.println("支付寶 支付統(tǒng)一下單");
    }
}
public class WechatPay implements Pay{
    @Override
    public void unifiedorder() {
        System.out.println("微信 支付統(tǒng)一下單");
    }
}

工廠具體實(shí)現(xiàn)類

/**
 *
 */
public class AliFactory implements IFactory{

    /**
     * 獲取支付類
     * @return
     */
    @Override
    public Pay getPay(){
        return new AliPay();
    }
}

/**
 *
 */
public class WechatFactory implements IFactory{

    /**
     * 獲取支付類
     * @return
     */
    @Override
    public Pay getPay(){
        return new WechatPay();
    }
}

測(cè)試


public class AppRun {
    public static void main(String[] args) {
        IFactory iFactory = new AliFactory();
        Pay pay = iFactory.getPay();

        //獲取支付
        pay.unifiedorder();

    }
}

設(shè)計(jì)模式-工廠設(shè)計(jì)模式,設(shè)計(jì)模式,設(shè)計(jì)模式

public class AppRun {
    public static void main(String[] args) {
        IFactory iFactory = new WechatFactory();
        Pay pay = iFactory.getPay();

        //獲取支付
        pay.unifiedorder();

    }
}

設(shè)計(jì)模式-工廠設(shè)計(jì)模式,設(shè)計(jì)模式,設(shè)計(jì)模式文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-673657.html

到了這里,關(guān)于設(shè)計(jì)模式-工廠設(shè)計(jì)模式的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 設(shè)計(jì)模式-工廠設(shè)計(jì)模式

    設(shè)計(jì)模式-工廠設(shè)計(jì)模式

    在簡(jiǎn)單工廠模式的基礎(chǔ)上進(jìn)一步的抽象化 具備更多的可擴(kuò)展和復(fù)用性,增強(qiáng)代碼的可讀性 使添加產(chǎn)品不需要修改原來(lái)的代碼,滿足 開(kāi)閉原則 優(yōu)點(diǎn) 符合 單一職責(zé) ,每個(gè)工廠只負(fù)責(zé)生產(chǎn)對(duì)應(yīng)的產(chǎn)品 符合 開(kāi)閉原則 ,添加產(chǎn)品只需添加對(duì)應(yīng)的產(chǎn)品類和工廠類 使用者只需要知道

    2024年02月11日
    瀏覽(20)
  • 設(shè)計(jì)模式-簡(jiǎn)單工廠模式(靜態(tài)工廠模式)java實(shí)現(xiàn)

    設(shè)計(jì)模式-簡(jiǎn)單工廠模式(靜態(tài)工廠模式)java實(shí)現(xiàn)

    簡(jiǎn)單工廠模式根據(jù)所 提供的參數(shù) 數(shù)據(jù)返回幾個(gè)可能類中的一個(gè)類的實(shí)例。通常返回的類都有一個(gè)公共的父類和公共的方法。 ? 意圖 提供一個(gè)類,負(fù)責(zé)根據(jù)一定的條件創(chuàng)建某一具體類的實(shí)例。同時(shí)使用工廠模式也是為了隱藏創(chuàng)建對(duì)象的過(guò)程 角色及其職責(zé) (1)工廠(Creator)角色

    2024年02月13日
    瀏覽(29)
  • 【創(chuàng)建型設(shè)計(jì)模式】C#設(shè)計(jì)模式之工廠模式,以及通過(guò)反射實(shí)現(xiàn)動(dòng)態(tài)工廠。

    題目如下: 簡(jiǎn)單工廠實(shí)現(xiàn): 上述代碼給出了抽象基類的基本定義,和泛型工廠的實(shí)現(xiàn)方式,以及調(diào)用方式。 值得注意的是 where T : Car, new() 這個(gè)條件: where T : Car, new() 是對(duì)泛型類型參數(shù) T 的約束。這個(gè)約束表明泛型類型參數(shù) T 必須滿足兩個(gè)條件: T 必須是 Car 類或者其派生類

    2024年02月11日
    瀏覽(19)
  • 【精選】設(shè)計(jì)模式——工廠設(shè)計(jì)模式

    【精選】設(shè)計(jì)模式——工廠設(shè)計(jì)模式

    工廠設(shè)計(jì)模式是一種創(chuàng)建型設(shè)計(jì)模式,其主要目的是通過(guò)將對(duì)象的創(chuàng)建過(guò)程封裝在一個(gè)工廠類中來(lái)實(shí)現(xiàn)對(duì)象的創(chuàng)建。這樣可以降低客戶端與具體產(chǎn)品類之間的耦合度,也便于代碼的擴(kuò)展和維護(hù)。 以下是Java中兩個(gè)常見(jiàn)的工廠設(shè)計(jì)模式示例: 簡(jiǎn)單工廠模式又稱靜態(tài)工廠模式,通

    2024年02月04日
    瀏覽(27)
  • 設(shè)計(jì)模式之工廠設(shè)計(jì)模式

    一種創(chuàng)建型模式,用于封裝和管理對(duì)象的創(chuàng)建 根據(jù)產(chǎn)品是具體產(chǎn)品還是具體工廠可分為簡(jiǎn)單工廠模式和工廠方法模式 用一個(gè)工廠類,根據(jù)不同的參數(shù),返回不同的對(duì)象。 (根據(jù)工廠的抽象程度,可分為工廠方法模式和抽象工廠模式) 工廠方法模式將生成具體產(chǎn)品的任務(wù)分發(fā)

    2024年02月03日
    瀏覽(21)
  • 結(jié)構(gòu)型設(shè)計(jì)模式-單例模式/工廠模式/抽象工廠

    創(chuàng)建型設(shè)計(jì)模式-單例模式/工廠模式/抽象工廠 行為型設(shè)計(jì)模式:模板設(shè)計(jì)模式/觀察者設(shè)計(jì)模式/策略設(shè)計(jì)模式 C#反射機(jī)制實(shí)現(xiàn)開(kāi)閉原則的簡(jiǎn)單工廠模式 設(shè)計(jì)模式可以分為三種類型: 創(chuàng)建型設(shè)計(jì)模式、結(jié)構(gòu)型設(shè)計(jì)模式和行為型設(shè)計(jì)模式 。 創(chuàng)建型設(shè)計(jì)模式:這些模式涉及到 對(duì)

    2024年02月11日
    瀏覽(24)
  • JavaScript設(shè)計(jì)模式(二)——簡(jiǎn)單工廠模式、抽象工廠模式、建造者模式

    JavaScript設(shè)計(jì)模式(二)——簡(jiǎn)單工廠模式、抽象工廠模式、建造者模式

    個(gè)人簡(jiǎn)介 ?? 個(gè)人主頁(yè): 前端雜貨鋪 ???♂? 學(xué)習(xí)方向: 主攻前端方向,正逐漸往全干發(fā)展 ?? 個(gè)人狀態(tài): 研發(fā)工程師,現(xiàn)效力于中國(guó)工業(yè)軟件事業(yè) ?? 人生格言: 積跬步至千里,積小流成江海 ?? 推薦學(xué)習(xí):??前端面試寶典 ??Vue2 ??Vue3 ??Vue2/3項(xiàng)目實(shí)戰(zhàn) ??Node.js??

    2024年02月10日
    瀏覽(23)
  • 【設(shè)計(jì)模式專題之抽象工廠模式】3. 家具工廠

    題目描述 小明家新開(kāi)了兩個(gè)工廠用來(lái)生產(chǎn)家具,一個(gè)生產(chǎn)現(xiàn)代風(fēng)格的沙發(fā)和椅子,一個(gè)生產(chǎn)古典風(fēng)格的沙發(fā)和椅子,現(xiàn)在工廠收到了一筆訂單,請(qǐng)你幫他設(shè)計(jì)一個(gè)系統(tǒng),描述訂單需要生產(chǎn)家具的信息。 輸入描述 輸入的第一行是一個(gè)整數(shù) N(1 ≤ N ≤ 100),表示訂單的數(shù)量。

    2024年03月12日
    瀏覽(31)
  • 【設(shè)計(jì)模式專題之工廠方法模式】2.積木工廠

    時(shí)間限制:1.000S??空間限制:256MB 題目描述 小明家有兩個(gè)工廠,一個(gè)用于生產(chǎn)圓形積木,一個(gè)用于生產(chǎn)方形積木,請(qǐng)你幫他設(shè)計(jì)一個(gè)積木工廠系統(tǒng),記錄積木生產(chǎn)的信息。 輸入描述 輸入的第一行是一個(gè)整數(shù) N(1 ≤ N ≤ 100),表示生產(chǎn)的次數(shù)。? 接下來(lái)的 N 行,每行輸入一

    2024年03月14日
    瀏覽(26)
  • 【深入理解設(shè)計(jì)模式】 工廠設(shè)計(jì)模式

    【深入理解設(shè)計(jì)模式】 工廠設(shè)計(jì)模式

    工廠設(shè)計(jì)模式是一種 創(chuàng)建型設(shè)計(jì)模式 ,它提供了一種在不指定具體類的情況下創(chuàng)建對(duì)象的接口。在工廠設(shè)計(jì)模式中,我們定義一個(gè)創(chuàng)建對(duì)象的接口,讓子類決定實(shí)例化哪一個(gè)類。工廠方法使一個(gè)類的實(shí)例化延遲到其子類。 工廠設(shè)計(jì)模式的目的是: 封裝對(duì)象創(chuàng)建的過(guò)程,使得

    2024年02月22日
    瀏覽(15)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包