在 程式設計(特別是 物件導向程式設計,OOP)中,Classes(類別) 是用來建立物件(Objects)的 藍圖。
🔹 什麼是 Class(類別)?
在 Python、Java、C++ 等程式語言中,類別(Class) 是一種 定義物件的模板,它描述了物件的 屬性(Attributes) 和 行為(Methods)。
📌 簡單來說:
- 類別 是一個設計圖
- 物件 是根據這個設計圖創建的實體
🔸 類別 vs 物件
✅ 類別(Class) → 規則,例如:「車子」是一種類別,描述了車子的特性(品牌、顏色)和行為(加速、剎車)。
✅ 物件(Object) → 實例,例如:「Toyota Camry」是一輛車,它是車子這個類別的具體物件。
🔹 Python 中的 Class(類別)
在 Python 中,使用 class 關鍵字來定義類別,並使用 __init__() 方法來初始化物件屬性。
📌 例子:定義一個 Car(車)類別
class Car:
def __init__(self, brand, color):
self.brand = brand # 屬性:品牌
self.color = color # 屬性:顏色
def drive(self):
print(f"{self.brand} 的 {self.color} 車正在行駛!")
# 創建物件(Object)
my_car = Car("Toyota", "紅色")
# 呼叫方法(Methods)
my_car.drive() # 輸出:Toyota 的 紅色 車正在行駛!
🔸 解釋
class Car:→ 定義一個類別 Car。__init__()→ 這是 建構子(Constructor),用來初始化物件屬性(品牌、顏色)。self.brand = brand→ 物件的屬性,每個車子物件都會有自己的品牌和顏色。def drive(self):→ 方法(Method),物件可以執行這個動作(行駛)。my_car = Car("Toyota", "紅色")→ 建立物件,my_car是Car類別的實例。my_car.drive()→ 讓車子執行 drive() 方法,輸出"Toyota 的 紅色 車正在行駛!"。
🔹 類別的特點
1️⃣ 封裝(Encapsulation) → 把數據和方法封裝在一起,例如 self.brand 和 drive()。
2️⃣ 繼承(Inheritance) → 新的類別可以繼承已有的類別,例如 ElectricCar 可以繼承 Car。
3️⃣ 多型(Polymorphism) → 讓不同的物件可以用相同的介面運作,例如 Car 和 Bike 都有 drive() 方法,但表現方式不同。
🔹 類別的應用
- 在 遊戲開發 中,你可以用
class Player來定義玩家角色,class Enemy來定義敵人。 - 在 Web 開發 中,你可以用
class User來管理使用者資料,如帳號、密碼等。 - 在 機器學習 中,你可以用
class Model來定義神經網路模型的結構。
🔹 總結
✅ Class(類別) 是物件的「藍圖」,定義了屬性(數據)和方法(行為)。
✅ Object(物件) 是依據類別所創建的「實例」,每個物件都有自己的數據。
✅ 類別讓程式更有結構、更容易維護、可以重複使用! 🚀
如果你有更具體的問題,或是想看更進階的類別應用(例如 繼承、封裝、抽象類別),歡迎繼續問我! 😊
沒有留言:
張貼留言