Python是一門面向對象的編程語言,封裝是面向對象編程中的三大特征之一,其目的是隱藏實現細節,提高代碼的安全性、穩定性和可維護性,同時也方便了程序的調用和使用。
在Python中,封裝通常是通過使用訪問控制修飾符來實現。Python中訪問控制修飾符主要有兩個,分別是單下劃線和雙下劃線。
單下劃線表示該屬性或方法為protected屬性或方法,即可以被本類及其子類訪問,但不建議直接訪問。例如:
class Person: def __init__(self, name): self._name = name class Student(Person): def print_name(self): print(self._name) s = Student("Tom") s.print_name() # 可以訪問父類的protected屬性
雙下劃線表示該屬性或方法為私有屬性或方法,即只能被本類訪問,無法被外部訪問。例如:
class Person: def __init__(self, name): self.__name = name def print_name(self): print(self.__name) class Student(Person): def print_name(self): print(self.__name) # 無法訪問父類的私有屬性 s = Student("Tom") s.print_name() # 會拋出AttributeError異常
調用封裝的屬性或方法可以使用點運算符或getattr函數來實現。例如:
class Person: def __init__(self, name): self._name = name def print_name(self): print(self._name) p = Person("Tom") p.print_name() # 使用點運算符調用 print(getattr(p, "_name")) # 使用getattr函數調用
封裝是面向對象編程中重要的特性之一,熟練掌握封裝及其調用方法可以提高代碼的可維護性和安全性。
上一篇python 將列表去除
下一篇vue 路由返回