位置:首頁 » Python3入門教學 » Python3 內部類

Python3 內部類 [編輯]

一個內部類或者嵌套類是在一個類的主體內定義的另一個類,一個例子說明如下:

#!/usr/bin/env python
 
class Human:
 
def __init__(self):
    self.name = 'Guido'
    self.head = self.Head()
 
class Head:
    def talk(self):
    return 'talking...'
 
if __name__ == '__main__':
    guido = Human()
    print guido.name
    print guido.head.talk()

輸出結果:

在以上程序中,我們有一個內部類:Head(),它有它自己的方法。 一個內部類可以有兩種方法和變量。在這個例子中,類:Human (__init__) 的構造函數創建一個新的 head 對象。 內部類的數量不受限,例如以下的代碼也可以工作:

#!/usr/bin/env python
 
class Human:
 
  def __init__(self):
    self.name = 'Guido'
    self.head = self.Head()
    self.brain = self.Brain()
 
  class Head:
    def talk(self):
      return 'talking...'
 
  class Brain:
    def think(self):
      return 'thinking...'
 
if __name__ == '__main__':
  guido = Human()
  print guido.name
  print guido.head.talk()
  print guido.brain.think()

通過使用內部類可以使你的代碼,麵向更多的對象。一個對象可以包含多個子對象。我們可以用它們來添加更多的結構到程序中。