更新時(shí)間:2021年03月19日15時(shí)23分 來(lái)源:傳智教育 瀏覽次數(shù):
(1)問(wèn)題分析
面試官主要想對(duì)工廠模式的理解與實(shí)際應(yīng)用考核。
(2)核心問(wèn)題講解
class Person: def __init__(self): self.name = None self.gender = None def getName(self): return self.name def getGender(self): return self.gender class Male(Person): def __init__(self, name): print "Hello Mr." + name class Female(Person): def __init__(self, name): print "Hello Miss." + name class Factory: def getPerson(self, name, gender): if gender == 'M': return Male(name) if gender == 'F': return Female(name) if __name__ == '__main__': factory = Factory() person = factory.getPerson("Chetan", "M")
(3)問(wèn)題擴(kuò)展
工廠模式,就是通過(guò)一個(gè)指定的“工廠”獲得需要的“產(chǎn)品”,在設(shè)計(jì)模式中主要用于抽象對(duì)象的創(chuàng)建過(guò)程,讓用戶可以指定自己想要的對(duì)象,而不必關(guān)心對(duì)象的實(shí)例化過(guò)程。工廠模式中包含一個(gè)超類,這個(gè)超類提供了一個(gè)抽象化的接口來(lái)創(chuàng)建一個(gè)特定類型的對(duì)象,而不是決定哪個(gè)對(duì)象可以被創(chuàng)建。
(4)結(jié)合項(xiàng)目中使用
無(wú)
猜你喜歡:
Python自動(dòng)化測(cè)試視頻教程【百度云盤(pán)下載】
MySQL數(shù)據(jù)庫(kù)怎樣分區(qū)和分表?【數(shù)據(jù)分析面試題】
2021-03-05使用Django開(kāi)發(fā)過(guò)程中如何優(yōu)化數(shù)據(jù)庫(kù)?
2021-03-04使用Django中間件的六種方法[python培訓(xùn)]
2021-03-04python assert用法詳解【傳智教育】
2021-03-04Python常見(jiàn)異常類型詳細(xì)介紹
2021-03-03TCP和UDP的優(yōu)缺點(diǎn)|TCP和UDP的優(yōu)缺點(diǎn)對(duì)比
2021-02-26北京校區(qū)