python3面向物件(1)
阿新 • • 發佈:2018-11-14
1.定義類,例項化物件:
class Nanny(object): #class 定義一個類名Nanny,這個類繼承了object def __init__(self,name,age): #__init__初始化方法,在建立物件的時候自動呼叫,第一個引數是必須有的self指的是建立的物件, self.name = name self.age = age def cook(self): #在類中的普通函式叫做方法;都有一個self引數;可以被建立的物件呼叫 print("這是一個做飯的過程") obj1 = Nanny("小紅",22) #建立一個obj1物件,傳入引數;這個引數被傳入__init__初始化方法中 print(obj1.name) print(obj1.age) obj1.cook() #呼叫類中的方法
2類中的方法(普通方法(例項化方法),類方法,靜態方法)和 類屬性
class Nanny(object): Nanny_name = "this is Nanny name" #這是一個類屬性,可以通過型別.呼叫 def __init__(self,name,age): self.name = name self.age = age @classmethod #這是一個類方法;通過@classmethod def cook1(cls): #方法的引數是cls 代表的這個類 print("我是一個類方法") @staticmethod #這是一個靜態方法,通過@staticmethod def cook2(): #方法裡面可以沒有引數 print("我是一個靜態方法:這是我的使用說明") def cook(self): print("這是一個做飯的過程") obj1 = Nanny("小紅",22) print(obj1.name) print(obj1.age)
#方法的呼叫,例項化的物件可以呼叫類中的所有方法 obj1.cook() obj1.cook1() obj1.cook2() #但是類名只能呼叫靜態方法和類方法 Nanny.cook1() Nanny.cook2()