Python中的類別和物件是物件導向程式設計的基礎。類別是用來定義物件的模板,而物件是類別的實例。類別提供了物件的屬性和方法,而物件則包含了這些屬性和方法。
要建立一個類,可以使用class
關鍵字。類別的名稱應以大寫字母開頭,以表示這是一個類別。類別的定義包括了類別的屬性和方法。屬性是類別的變量,而方法是類別的函數。
class Person: name = "John" age = 20 def greet(self): print("Hello, my name is", self.name)
上面的程式碼定義了一個名為Person
的類別。這個類別有兩個屬性:name
和age
。它還具有一個方法:greet()
。
要建立一個對象,可以使用class
關鍵字後面跟著類別的名稱。物件是類別的實例,它包含了類別的屬性和方法。
person1 = Person() person2 = Person()
上面的程式碼建立了兩個Person
物件。每個物件都具有自己的屬性和方法。
要存取物件的屬性或方法,可以使用點運算子.
。點運算子的左邊是對象,點運算子的右邊是屬性或方法的名稱。
person1.name = "Mary" person1.greet()
上面的程式碼將person1
物件的name
屬性的值改為"Mary",然後呼叫person1
物件的greet()
方法。
繼承是Python類別的一個重要概念。繼承允許一個類別從另一個類別繼承屬性和方法。衍生類別可以覆寫基底類別的屬性和方法,也可以新增新的屬性和方法。
class Student(Person): student_id = 12345 def study(self): print("I am studying.")
上面的程式碼定義了一個名為Student
的類,它從Person
類別繼承。 Student
類別有自己的屬性和方法,它還具有Person
類別的屬性和方法。
多態是Python類別和物件的一個重要特性。多態允許不同的物件對同一個方法做出不同的反應。這使得程式碼更加靈活和可重複使用。
def greet_person(person): person.greet() person1 = Person() person2 = Student() greet_person(person1) greet_person(person2)
上面的程式碼定義了一個名為greet_person()
的函數。這個函數接受一個物件作為參數,並呼叫物件的greet()
方法。當person1
物件傳遞給函數時,函數呼叫Person
類別的greet()
方法。當person2
物件傳遞給函數時,函數呼叫Student
類別的greet()
方法。
以上是全面掌握Python類別與物件的知識,成為Python程式設計高手的詳細內容。更多資訊請關注PHP中文網其他相關文章!