python物件導向 詳談類的繼承與方法的過載

2022-09-28 20:30:26 字數 1933 閱讀 3831

1. 類的繼承與方法的過載

上面就是先定義了乙個類a,然後由定義了乙個類b,b繼承了類a,這樣b就有了a的非私有屬性和方法。

class washer:

company='zbl'

def __init__(self,water=10,scour=2):

self._water=water #不想讓使用者直接訪問例項變數,可以標誌成私有

self.scour=scour

self.year=2000#這是生產日期

#屬性包裝,將water屬性包裝成方法,使用者使用water時實際是訪問的方法

@staticmethod #定義乙個靜態方法

def spins_ml(spins):

return spins*0.4

print('company:',washer.company)

#print('year:',self.year)#錯誤,靜態方法不能使用例項屬性

@classmethod

def get_washer(cls,water,scour):#cls相當於例項方法中的self,呼叫是不用提供這個引數

return cls(water,cls.spins_ml(scour))#cls代表類名washer,故不是硬編碼(改類名是不用改cls,若cls用類名代替也對,但www.cppcns.com若改類名這個地方也需要改動)

@property

def water1(self):#如果使用者使用 例項.water相當於訪問這個方法,而不程式設計客棧是真的訪問屬性

return self._water

@water1.setter

def water1(self,water):

if 0www.cppcns.come:

print('set failure!')

@property

def total_year(self):

return 2017-self.year

movmjo def set_water(self,water):

self.water=water

def set_scour(self,scour):

self.scour=scour

def add_water(self):

print('add water:',self._water)

def add_scour(self):

print('add scour:',self.scour)

def start_wash(self):

self.add_water()

self.add_scour()

print('start wash...')

class washerdry(washer):# 建立乙個新類,繼承自washer

def dry(self):#新類中可以定義只屬於子類的新方法

print('dry cloths...')

def start_wash(self):#在子類中新定義與父類同名的方法就是方法的過載

self.add_scour()

self.add_water()

if __name__=='__main__':

## print(washer.spins_ml (8))

## w=washer()

## print(w.spins_ml(8))

## w=washer(200,washer.spins_ml(8))

## w.start_wash()

w=washerdry()

w.start_wash()

print(w.scour,w.company)

w.dry()

本文標題: python物件導向_詳談類的繼承與方法的過載

本文位址: /jiaoben/python/193000.html

python物件導向(類和物件)

物件導向程式設計的2個非常重要的概念 類和物件 物件是物件導向程式設計的核心,在使用物件的過程中,為了將具有共同特徵和行為的一組物件抽象定義,提出了另外乙個新的概念 類 類就相當於製造飛機時的圖紙,用它來進行建立的飛機就相當於物件 賓士汽車 類 賓士smart 類 張三的那輛賓士smart 物件 狗...

python物件導向 類與物件

嗯,本學期開始學python物件導向的內容了,唔,前面的內容會在後期有時間慢慢補的。類與物件 我生活中有這樣一句話叫 物以類聚,人以群分 重點是前面那句,什麼是類呢,就是一類事物,比如人類 動物類 這是乙個大的範圍 類是封裝物件的屬性和行為的載體,反過來說,具有相同屬性和行為的一類實體被稱為類 而物...

Python 物件導向 類和物件

類 和 物件 是物件導向程式設計的 兩個 核心概念 類就相當於製造飛機時的圖紙,是乙個模板,是負責建立物件的 物件就相當於用圖紙製造的飛機 在開發過程中,應該先有類,再有物件 類中定義了什麼屬性和方法,物件中就有什麼屬性和方法,不可能多,也不可能少 在使用物件導向開發前,應該首先分析需求,確定一下,...