国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

設(shè)計模式--抽象模式

VincentFF / 1093人閱讀

摘要:子類,工廠子類,調(diào)用工廠子類需要抽象類定義子類模式,工廠類需要定義抽象類規(guī)范模式。類的功能要單一,每個只做一種功能,管理一類數(shù)據(jù),定義要不怕多,通過上級管理起來提升所有的子,工廠,需要定義抽象類,規(guī)范格式。

1.子類 class, 工廠子類class, 調(diào)用工廠class
2.子類需要抽象類定義子類模式, 工廠類需要定義抽象類規(guī)范模式。 每一個工廠類管理    
 管理類管理工廠類。
3.應(yīng)用:最復(fù)雜的模式:一個接口有很多的調(diào)用實例,   調(diào)用實例可以分為不同情況,不> >      同的工廠進行管理。

4.總起來看,出口要簡潔統(tǒng)一,內(nèi)部分別管理。

 class類的功能要單一,每個只做一種功能,管理一類數(shù)據(jù),定義class要不怕>多,通過

上級管理起來
5.提升:所有的子class,工廠class,需要定義抽象類,規(guī)范格式。

import random
"""

    
                         
"""

class Dog:
    def speak(self):
        return "whoof"
    def __str__(self):
        return "dog"

class Cat:
    def speak(self):
        return "meow"
    def __str__(self):
        return "cat"

class DogFactory:
    def get_pet(self):
        return Dog()
    def get_food(self):
        return "dog food"

class CatFactory:
    def get_pet(self):
        return Cat()
    def get_food(self):
        return "cat food"

class PetFactory:
    def __init__(self,pet_factory=None):
        self.pet_factory=pet_factory
    def show_pet(self):
        pet=self.pet_factory.get_pet()
        print("This is a lovely", pet)
        print("speak   ==>",pet.speak())
        print("get_food==>",self.pet_factory.get_food())

# Show pets with various factories

def get_factory():

    """Let"s be dynamic!"""

    return random.choice([DogFactory, CatFactory])()



shop = PetFactory()

for i in range(3):

    shop.pet_factory = get_factory()

    shop.show_pet()

    print("=" * 10)







文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/44933.html

相關(guān)文章

  • JavaScript工廠模式

    摘要:基于工廠角色和產(chǎn)品角色的多態(tài)性設(shè)計是工廠方法模式的關(guān)鍵。工廠方法模式之所以又被稱為多態(tài)工廠模式,是因為所有的具體工廠類都具有同一抽象父類。工廠方法模式總結(jié)工廠方法模式是簡單工廠模式的進一步抽象和推廣。 JavaScript工廠模式 首先需要說一下工廠模式。工廠模式根據(jù)抽象程度的不同分為三種 簡單工廠模式 工廠方法模式 抽象工廠模式 1.簡單工廠模式 簡單工廠模式:又稱為靜態(tài)工廠方法...

    oujie 評論0 收藏0
  • js常用設(shè)計模式實現(xiàn)(二)工廠模式抽象工廠模式

    摘要:抽象工廠模式可以向客戶端提供一個接口,使客戶端在不必指定產(chǎn)品的具體的情況下,創(chuàng)建多個產(chǎn)品族中的產(chǎn)品對象。前邊的兩個都是直接生產(chǎn)實例的,開始以為抽象工廠也是但是后來發(fā)現(xiàn)抽象工廠更像是生產(chǎn)工廠,其實抽象工廠其實是實現(xiàn)子類繼承父類的方法。 創(chuàng)建型模式 創(chuàng)建型模式是對一個類的實例化過程進行了抽象,把對象的創(chuàng)建和對象的使用進行了分離 上一篇介紹了下單例模式,這一篇介紹一下工廠模式和抽象工廠模式,...

    meteor199 評論0 收藏0
  • PHP高級特性-反射Reflection以及Factory工廠設(shè)計模式的結(jié)合使用[代碼實例]

    摘要:反射提供給面向?qū)ο缶幊炭梢宰允〉哪芰?,即反射。在簡單工廠模式中,根據(jù)傳遞的參數(shù)來返回不同的類的實例簡單工廠模式又稱為靜態(tài)工廠方法模式。也就是簡單工廠模式工廠工廠類。PHP高級特性-反射以及工廠設(shè)計模式的結(jié)合使用 [結(jié)合 Laravel-Admin 代碼實例講解]利用反射來實現(xiàn)工廠模式的生產(chǎn)而無需創(chuàng)建特定的工廠類本文地址http://janrs.com/?p=833轉(zhuǎn)載無需經(jīng)過作者本人授權(quán)轉(zhuǎn)載...

    番茄西紅柿 評論0 收藏2637
  • “大話”設(shè)計模式

    摘要:抽象工廠模式是為了處理對象具有等級結(jié)構(gòu)以及對象族的問題。單例設(shè)計模式單例模式確保某一個類只有一個實例,而且自行實例化并向整個系統(tǒng)提供這個實例,這個類成為單例類。 導(dǎo)語:設(shè)計模式是無數(shù)碼農(nóng)前人在實際的生產(chǎn)項目中經(jīng)過不斷的踩坑、爬坑、修坑的經(jīng)歷總結(jié)出來的經(jīng)驗教訓(xùn),經(jīng)過抽象之后表達成的概念。能夠幫助后來的設(shè)計者避免重復(fù)同樣的錯誤或者彎路。我也抽空整理了一下設(shè)計模式,用自己的話總結(jié)了一下,自認...

    coordinate35 評論0 收藏0
  • PHP設(shè)計模式(三)抽象工廠模式(Abstract Factory)

    摘要:支持增加任意產(chǎn)品抽象工廠用來生產(chǎn)不同產(chǎn)品族的全部產(chǎn)品。對于增加新的產(chǎn)品,無能為力支持增加產(chǎn)品族參考系列源地址系列目錄設(shè)計模式概述設(shè)計模式一簡單工廠模式設(shè)計模式二工廠方法模式設(shè)計模式三抽象工廠模式設(shè)計模式四單例模式 一、什么是抽象工廠模式 抽象工廠模式的用意為:給客戶端提供一個接口,可以創(chuàng)建多個產(chǎn)品族中的產(chǎn)品對象 ,而且使用抽象工廠模式還要滿足以下條件: 系統(tǒng)中有多個產(chǎn)品族,而系統(tǒng)一次...

    W_BinaryTree 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<