在Python中,可以使用class
關鍵字來定義一個類。類的定義包括類名、類的屬性和方法。
類的封裝是指將類的屬性和方法封裝起來,只允許通過類的接口訪問和修改屬性,以及調用方法。這樣可以隱藏類的實現細節,提高代碼的可維護性和安全性。
下面是一個示例,演示了如何定義一個類并進行封裝:
class Person:
# 類的屬性
species = 'Human'
# 初始化方法
def __init__(self, name, age):
self.name = name
self.age = age
# 類的方法
def say_hello(self):
print(f"Hello, my name is {self.name}. I'm {self.age} years old.")
# 創建對象并調用方法
p1 = Person("Alice", 25)
p1.say_hello() # 輸出:Hello, my name is Alice. I'm 25 years old.
# 訪問和修改屬性
print(p1.name) # 輸出:Alice
p1.age = 26
print(p1.age) # 輸出:26
# 訪問類的屬性
print(Person.species) # 輸出:Human
在上面的示例中,Person
類有一個類屬性species
,以及一個初始化方法__init__
和一個實例方法say_hello
。通過創建對象p1
,可以調用實例方法say_hello
來打印個人信息,并且可以訪問和修改對象的屬性name
和age
。同時,還可以通過類名訪問類的屬性species
。
封裝的關鍵在于將屬性設置為私有的,可以在屬性名前加上雙下劃線__
來實現,如self.__age = age
。這樣就只能通過類的方法來訪問和修改屬性。