請提供python 物件導向程式設計的知識,並各給1個程式範例
时间: 2023-06-01 08:01:43 浏览: 46
Python 物件導向程式設計是一種程式設計方法,其中程式被組織為物件,每個物件都有其屬性和方法。以下是 Python 物件導向程式設計的一些知識:
1. 類別 (Class):在 Python 中,類別是定義物件的藍圖或模板。它定義了物件的屬性和方法。
2. 物件 (Object):物件是類的實例,它具有類定義的屬性和方法。
3. 繼承 (Inheritance):繼承是一種物件導向的概念,它允許一個類別繼承另一個類別的屬性和方法。
4. 多型 (Polymorphism):多型是指物件可以以多種形式表現出來。在 Python 中,它是通過方法重載和方法覆蓋來實現的。
5. 封裝 (Encapsulation):封裝是隱藏物件的內部細節,只公開必要的接口。在 Python 中,它通常通過使用私有屬性和方法來實現。
以下是一個 Python 物件導向程式設計的程式範例:
```python
class Animal:
def __init__(self, name, sound):
self.name = name
self.sound = sound
def make_sound(self):
print(f"{self.name} makes {self.sound} sound.")
class Dog(Animal):
def __init__(self, name):
super().__init__(name, "woof")
class Cat(Animal):
def __init__(self, name):
super().__init__(name, "meow")
dog = Dog("Fido")
dog.make_sound() # Fido makes woof sound.
cat = Cat("Fluffy")
cat.make_sound() # Fluffy makes meow sound.
```
這個程式定義了一個 Animal 類別,它有一個屬性 name 和一個方法 make_sound。然後定義了兩個子類別 Dog 和 Cat,它們繼承了 Animal 類別的屬性和方法。Dog 類別的 make_sound 方法使用了 "woof" 聲音,而 Cat 類別的 make_sound 方法使用了 "meow" 聲音。最後,程式創建了一個 Dog 物件和一個 Cat 物件,並呼叫它們的 make_sound 方法。