การนำ Abstract Base Class ไปใช้งาน
เมื่อสร้าง abstract base class ชื่อ Company เรียบร้อยแล้ว ก็สามารถนำไปใช้เป็น "blueprint" สำหรับบริษัทประเภทต่างๆ ได้ ในแบบฝึกหัดนี้จะได้ฝึกทำสิ่งนั้นโดยการสร้างคลาส Technology
คลาส Company จากแบบฝึกหัดก่อนหน้าได้ถูกกำหนดไว้ให้แล้ว ดังนี้
class Company(ABC):
@abstractmethod
def create_budget(self):
pass
def hire_employee(self, name):
print(f"Welcome to the team, {name}!")
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Object-Oriented Programming ใน Python ระดับกลาง
คำแนะนำการฝึกหัด
- สร้างคลาส
Technologyที่สืบทอดมาจาก abstract base class ชื่อCompany - กำหนดเมธอด
create_budget()โดยมีพารามิเตอร์สองตัวคือyearและexpenses - สร้าง instance ของคลาส
Technologyโดยใช้ชื่อว่า "Tina's Tech Advisors" - เรียกใช้เมธอด
create_budget()ด้วยอาร์กิวเมนต์ที่กำหนดให้ แล้วสังเกตผลลัพธ์ของเมธอดนี้ รวมถึงผลลัพธ์ของhire_employee()ด้วย
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Create a class with the name "Technology"
class ____(____):
def __init__(self, name):
self.name = name
# Define a create_budget() method
def ____(self, ____, ____):
for expense, amount in expenses.items():
print(f"{year} budget for {expense} is {amount}")
# Create an instance of the Technology class, call methods
t = ____("____")
t.____(2024, {"Salaries": 10000, "Supplies": 500})
t.____("Christian")