2023-08-28|閱讀時間 ‧ 約 4 分鐘

小白學Python的第十五堂課

    在第十五課中,我們將探索 Python 的基礎物件導向程式設計 (OOP) 概念。

    物件導向程式設計是一種設計和組織程式碼的方法,它強調使用物件來表示資料和功能。

    請新建一個檔案 oop_basics.py

    1. 類和物件:
    • 類 (Class): 定義一個新的資料型態,它有自己的屬性和方法。
    • 物件 (Object): 是類的一個實例。
    pythonCopy code
    # 定義一個類
    class Dog:
    def __init__(self, name, age):
    self.name = name
    self.age = age

    def bark(self):
    print(f"{self.name} barks!")

    # 建立一個物件
    buddy = Dog("Buddy", 3)
    buddy.bark()
    1. 繼承 (Inheritance): 繼承允許一個類從另一個類中獲得其屬性和方法。
    pythonCopy code
    class GoldenRetriever(Dog):
    def fetch(self, item):
    print(f"{self.name} fetched {item}!")

    rex = GoldenRetriever("Rex", 5)
    rex.bark()
    rex.fetch("ball")
    1. 封裝 (Encapsulation): 封裝是 OOP 的一個主要特點,它確保物件的內部狀態不被外部直接訪問。
    pythonCopy code
    class Cat:
    def __init__(self, name):
    self._name = name # _name 是私有屬性

    def meow(self):
    print(f"{self._name} says meow!")

    whiskers = Cat("Whiskers")
    whiskers.meow()
    # print(whiskers._name) # 通常不建議直接訪問私有屬性
    1. 多型 (Polymorphism): 多型允許不同的類可以被用作同一個介面,或者說,不同的物件可以以相同的方式使用。
    pythonCopy code
    class Fish:
    def __init__(self, name):
    self.name = name

    def speak(self):
    print(f"{self.name} blubs!")

    def animal_speak(animal):
    animal.speak()

    tom = Cat("Tom")
    nemo = Fish("Nemo")

    animal_speak(tom) # 輸出: Tom says meow!
    animal_speak(nemo) # 輸出: Nemo blubs!

    以上只是 OOP 在 Python 中的基礎。隨著你繼續深入學習,你將發現更多進階的主題和技巧。

    請在 oop_basics.py 中輸入並運行上述代碼,嘗試創建自己的類和物件,並進行繼承和多型的實驗。

    分享至
    成為作者繼續創作的動力吧!
    © 2024 vocus All rights reserved.