關於python類的組合

2021-09-20 22:01:29 字數 1826 閱讀 3384

關於python類的組合,絞盡腦汁之後,寫了乙個生活中的簡單例子,有需要的童鞋可以理解下,水平有限,不對的地方望指正

#coding:utf-8

class engine():

#某發動機廠家描述發動機物件

definit(self, enginenumber, horsepower):

self.enginenumber = enginenumber #引擎數量

self.horsepower = horsepower #動力大小

def

repairengine

(self):

#對發動機進行維修

print(u"repair the engine ...")

class wheel():

#某車輪廠家描述車輪物件

definit(self, brand, model, quantity):

self.brand = brand #品牌

self.model = model #型號

self.quantity = quantity #數量

def

maintenance

(self):

#對車輪進行保養

print("car wheel maintenance...")

class car():

#奧迪廠家組裝汽車(描述汽車物件)

definit(self, manufacturers, frames, enginenumber, horsepower, brand, model, quantity):

self.manufacturers = manufacturers #奧迪廠商

self.frames = frames #奧迪車架

self.ngineobj = engine(enginenumber, horsepower) #發動機是汽車的元件,從別的廠家進行採購

self.wheelobj = wheel(brand, model, quantity) #車輪是汽車的元件,從別的廠家進行採購

def

goahead

(self):

#車子前進

print("go ahead...")

defbacks

(self):

#車子後退

print("go backs...")

ifname== "main":

#廠家開始組裝

car1 = car("aodi", "ds12", 1, 90, "gh", "gh-101", 4)

car1.goahead() #測試是否會前進

car1.backs() #測試是否會後退

#測試的時候發現車輪有問題,於是返廠保養一下

car1.wheelobj.maintenance()

#測試的時候,發動機又壞了,於是聯絡廠商,進行發動機維修

car1.ngineobj.repairengine()

#最後,你會發現,對車輪的保養和發動機的維修,你不用關心內部細節是如何保養,是如何維修的,只需呼叫就好

#發動機和車輪是作為汽車的元件而存在,將汽車模型(類)和車輪還有發動機組合成了乙個新的物件,那就是能前進和後退的汽車

#當然,前進和後退的功能,發動機和車輪廠商也不用關心是如何實現的,哪怕奧迪廠家把這些元件組裝成會飛的東西,他們也不關心

python的類的組合

一 定義 組合 為乙個類的物件封裝屬性,這個屬性是另乙個類的例項 二 組合舉例 1 模擬遊戲類 要求 1 建立乙個任務角色類gamerole,構造方法中封裝三個屬性 name,ad 攻擊力 hp 血量 2 gamerole類中定義乙個方法attack 例項化兩個物件以及互相攻擊的功能 3 建立乙個工...

關於objective c中類的組合

關於objective c中類的組合問題,我們先來看一道題 1.設計2個類,類之間的關係自擬 比如繼承 組合 1 身材資料 1 屬性 身高 體重 手長 腳長 2 方法 屬性相應的set和get方法 2 人 1 屬性 年齡 身高 體重 手長 腳長 2 方法 屬性相應的set和get方法 思路 在這道題...

Python高階 類的組合

定義乙個人的類,人有頭 軀幹 手 腳等資料屬性,這幾個屬性又可以是通過乙個類例項化的物件,這就是組合 1 class hand 2pass 3class foot 4pass 5class trunk 6pass 7class head 8pass910 class person 11def ini...