class Dog(object): # 定义class def __init__(self, name): # 构造函数,构造方法 == 初始化方法 self.name = name # d.name = name 类的属性 / 成员变量 def say_hi(self): # 类的方法 print("Hello, I am a dog. My name is", self.name) def eat(self, food): print("%s is eating %s." % (self.name, food)) d = Dog("xiaohei") # Dog(d,"xiaohei") d == self # d 实例化的对象即实例,类中的self相当于实例 d.say_hi() # d.say_hai(d) d.eat('beaf')
#第一種方法__init__()方法是一種特殊的方法,被稱為類別的建構子或初始化方法,當創建了這個類別的實例時就會呼叫該方法
self 代表類別的實例,self 在定義類別的方法時必須有的,雖然在調用時不必傳入對應的參數。
類別的方法與普通的函數只有一個特別的差異— —它們必須有一個額外的第一個參數名稱, 依照慣例它的名稱是self。
class Dog(object): def prt(self): print(self) print(self.__class__) d = Dog() print(d) print("-------------") d.prt() #输出 <__main__.Dog object at 0x000001DDBD10C5F8> ------------- <__main__.Dog object at 0x000001DDBD10C5F8> <class '__main__.Dog'>
從執行結果可以很明顯的看出,self 代表的是類別的實例,代表目前物件的位址,而 self.class 則指向類別。
實例化類別其他程式語言中一般用關鍵字new,但在Python 中並沒有這個關鍵字,類別的實例化類似函數呼叫方式。
# 创建一个Dog类的对象 d = Dog("xiaohei")
實例化後的物件又稱為:實例
您可以使用點(.)來存取物件的屬性
# 通过 d.方法 来访问属性 d.eat('beaf') #输出 xiaohei is eating beaf.
#
以上是類別的實例化介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!