組合
【適合沒干係的橫向類,比如池塘,烏龜,魚】
把類的例項化放到新類裡面
屬性名和方法名相同,屬性會覆蓋掉方法
繫結
方法需要例項才能被呼叫!! 這種限制即繫結
用self接受繫結
class ball():
def xx(self,a):
print(...)
b = ball();
b.xx('123');
刪除del ball類時,b.xx('123')仍然可以呼叫
即通過繫結使用例項屬性,類屬性通常用來跟蹤相關的值
類中定義的屬性和方法是靜態變數,類被刪除,這些仍然存在
類和物件相關的內建函式bif
issubclass(a,b)---如果a是b的子類,返回true
1.乙個類,自己是自己的子類
2.b可以是類物件組成的元組,只要a是其中任何乙個的子類,返回true
isinstance(a,b)--a是例項物件,b是類 a是否是b的例項物件
1.b頁可以是類或類元組
2.如果不是類/類元組 返回typeerror異常
3.a不是例項物件,永遠false
hasattr(物件,'屬性名')---測試物件是否有屬性
getattr(物件,'name'[,"default"])---返回物件指定的屬性值,如果該屬性不存在,【如果設定了default,則列印之】,否則丟擲typeerror異常
setattr(物件,'name',value)---設定物件屬性的值,如果該屬性不存在,新建
delattr(物件,'name')---存在,則刪除,不存在,丟擲attributeerror異常
property(fget=none//獲得屬性的方法,fset=none//設定,fdel=none//刪除,doc=none)---設定乙個新的屬性,去定義已有的屬性
python物件導向2
主要通用 新增到屬性名前,可以讓該屬性得到乙個保護 class wudang name 武當 kongfu list aaa bbb ccc wd wudang print wd.name print wd.kong list 定義類的時候,如果希望繼承自另外乙個類 可以通過 class 類名 父類...
Python 物件導向2
instance 和 issubclass class foo pass foo foo print isinstance foo,foo print isinstance 1 int true trueclass foo pass foo foo print isinstance foo,foo ...
Python 物件導向程式設計2
start object 類是所有類的父類,它定義了好多方法,重寫這些方法我們可以定製自己的類。我們可以比較兩個數字的大小,那我們自定義的類可不可以呢?其實很簡單,我們只需要重寫 object 類中定義的比較方法即可。class mynumber 初始化屬性 def init self,num se...