開始使用免費開始

自訂子類別

繼承之所以強大,是因為它讓我們能重複使用並自訂程式碼,而不必重寫既有程式碼。透過在子類別中呼叫父類別的方法,你可以重用那些方法裡的所有程式碼,讓程式更精簡、也更好維護。

在這個練習中,你會繼續使用從 Employee 類別繼承而來的 Manager 類別。你將新增一個建構子,並在 Employee 的建構子基礎上再加一個引數,用來指定這位經理目前負責的專案。

一個簡化版的 Employee 類別,以及你先前建立之 Manager 類別的開頭程式碼,已放在 script.py 供你使用。

本練習屬於課程

Python 物件導向程式設計入門

檢視課程

練習說明

  • Manager 中新增建構子,接受 namesalary(預設值為 50000)與 project(預設值為 None)。
  • Manager 的建構子裡,呼叫 Employee 類別的建構子,並提供父類別建構子所定義的三個引數。
  • 使用 self 將相對應的屬性指派為 project 引數。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

class Employee:
  def __init__(self, name, salary=30000):
    self.name = name
    self.salary = salary

  def give_raise(self, amount):
    self.salary += amount

class Manager(Employee):
  # Add a constructor 
  def __init__(self, name, ____=____, ____=____):
    
    # Call the parent's constructor   
    ____.____(____, ____, salary)
    
    # Assign project attribute
    ____.____ = ____

  def display(self):
    print("Manager ", self.name)
編輯並執行程式碼