類的繼承機制
繼承(inheritance):如果乙個類別a繼承自另乙個類別b,就把繼承者a稱為子類,被繼承的類b稱為父類、基類或超類
**復用:利用繼承可以從已有類中衍生出新的類,新增或修改部分功能;新類具有舊類中的各種屬性和方法,而不需要進行任何複製
class car:
def __init__(self, name):
self.name = name
self.remain_mile = 0
def file_fuel(self, miles): # 加燃料里程
self.remain_mile = miles
def run(self, miles): # 跑miles英里
print(self.name , end = ': ')
if self.remain_mile >= miles:
self.remain_mile -= miles
print("run %d miles!" % (miles,))
else:
print("fuel out!")
class gascar(car):
def fill_fuel(self, gas): #加汽油gas公升
self.remain_mile = gas *6.0 #每公升跑6英里
class eleccar(car):
def fill_fuel(self, power): #充電power度
self.remain_mile = power * 3.0 #每度電3英里
子類和父類
定義:如果兩個類具有「一般-特殊」的邏輯關係,那麼特殊類就可以作為一般類的「子類」來定義,從「父類」繼承屬性和方法
class 《子類》(《父類名》):
def 《重定義方法》(self,...)
覆蓋(override):子類物件可以呼叫父類方法,除非這個方法在子類中重新定義了;如果子類同名方法覆蓋了父類的方法,仍然還可以呼叫父類的方法;子類還可以新增父類中沒有的方法和屬性
class gascar(car):
def __init__(self, name, capacity): # 名稱和排量
super().__init__(name) # 父類初始化方法,只有名稱
self.capacity = capacity # 增加了排量屬性
關於self
在類定義中,所有方法的首個引數一般都是self;self的作用:在類的內部,例項化過程中傳入的所有資料都賦給這個變數
self實際上代表物件例項
《物件》.《方法》(《引數》)
等價於《類》.《方法》(《物件》,《引數》)
這裡的物件就是self
python基礎複習(三)物件導向
為什麼使用物件導向?物件導向是將資料和函式繫結進行封裝,提高 的重複利用率,以此提高開發效率。提高復用性 提高開發效率類 類是對一類事物的描述物件 物件是具體的事物,可以直接使用的二者關係 類是物件的模板,物件是類的例項體現類的構成 類名 屬性 方法類的屬性 類屬性 例項屬性 self 私有屬性1....
python基礎語法(三)物件導向 類的定義與呼叫
什麼是類 類 class 是物件的模板,封裝了對應現實實體的性質和行為 例項物件 instance objects 是類的具體化 把模擬作模具,物件則是用模具製造出來的零件 類的出現,為物件導向程式設計的三個最重要的特性提供了實現的手段 封裝性 繼承性 多型性 和函式相似,類是一系列 的封裝 pyt...
實驗三 物件導向初步
1 實驗目的 1 學習如何宣告和編寫類的 2 學習如何編寫改變類的屬性的成員函式。3 學習如何宣告和建立物件,如何通過物件呼叫類的成員函式。2 實驗內容 2.1 設計point類 40分 1 問題描述 計算機的顯示屏的座標系是這樣的,左上角的座標為 0,0 如下圖所示。定義計算機顯示屏上的點poin...