Python - 面向對象編程 - __init__() 構造方法


什么是構造方法

  • 在創建類時, 可手動添加一個   __init__() 方法,稱為構造方法,這是一個實例方法
  • 構造方法用於創建實例對象時使用,每當創建一個類的實例對象時,Python 解釋器都會自動調用它
  • 一般用來初始化對象的某些屬性

 

構造方法語法格式

class 類:
    def __init__(self, 參數):
        self.屬性 = 參數
     ... 對象
= 類(參數)
  • init 的前綴和后綴是兩個下划線 _
  • 方法可以包含多個參數,但必須要包含一個 self 參數,且必須為第一個參數,所以至少要包含一個 self 參數
  • 第一個參數 self 指向新創建的對象

 

類的默認構造方法

  • __init__() 構造方法並不是必寫
  • 假設不寫,Python 也會自動添加一個僅包含 self 參數的 __init__() 構造方法,這又稱為類的默認構造方法

 

不帶參數的構造方法栗子

# 不帶參數
class PoloBlog:
    def __init__(self):
        print("自動調用構造方法")
        # 定義了一個實例屬性
        self.name = "小菠蘿"


blog = PoloBlog()
print(blog.name)


# 輸出結果
自動調用構造方法
小菠蘿

顯然,在創建 blog 這個對象時,隱式調用了手動創建的 __init__() 構造方法

 

帶參數的構造方法栗子

# 帶參數
class PoloBlog:
    def __init__(self, name, age):
        print("自動調用構造方法")
        # 初始化實例屬性
        self.name = name
        self.age = age

    # 下面定義了一個 say 實例方法
    def say(self):
        print(self.name, self.age)


blog = PoloBlog("姓名", "年齡")
blog.say()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM