封装(Encapsulation),即在设计类时,刻意地将一些属性和方法隐藏在类的内部,这样在使用此类时,将无法直接以“类对象.属性名”(或者“类对象.方法名(参数)”)的形式调用这些
封装(Encapsulation),即在设计类时,刻意地将一些属性和方法隐藏在类的内部,这样在使用此类时,将无法直接以“类对象.属性名”(或者“类对象.方法名(参数)”)的形式调用这些属性(或方法),而只能用未隐藏的类方法间接操作这些隐藏的属性和方法。
在Python中,封装是一种面向对象编程中的重要概念,它是指将对象的内部状态和行为隐藏起来,只暴露必要的接口供外部使用。这样可以保证对象的内部状态不受外部直接修改,从而提高程序的安全性和可维护性。
在Python中,封装可以通过以下几种方式来实现:
私有属性和方法Python中可以通过在属性或方法名前添加双下划线"__"来将其设置为私有的,私有属性或方法只能在类的内部使用,外部无法直接访问。例如:
class MyClass:
def __init__(self):
self.__private_attr = 0
def __private_method(self):
print("This is a private method.")
公有属性和方法
公有属性和方法可以被类的外部访问和使用,不需要添加任何特殊符号。例如:
class MyClass:
def __init__(self):
self.public_attr = 0
def public_method(self):
print("This is a public method.")
属性装饰器
Python中的@property装饰器可以将类的方法装饰成属性,使其在调用时像访问属性一样简单。例如: