python - class类 (七) 三大特性 - 封装 结尾

时间:2022-05-22 20:15:49

封装:

# 封装
#第一层,类就是麻袋,本身就是一种封装
#第二层,类中定义私有的,至在类的内部使用,外部无法访问
#第三层,封装在于明确区分内外,使得类实现者可以修改封装内的东西二不影响外部调用者
#而外部调用者也可以知道自己可以使用哪些属性哪些不行.
class A():
#1.定义一个类属性
# num = 123
#2.第二种'隐藏'的类私有属性(约定)
# _num = 123
#3.第三种'隐藏'类私有属性(约定)
# __num = 123 def __init__(self,name,yc):
self.name = name
#私有实例属性
self.__yc = yc #私有类函数方法
def __test(self):
print("test")
anec = A("anec",123)
#第一种
# print(anec.num)
#第二种
# print(anec._num)
#第三种
# print(anec._A__num) #类的函数方法也同上
anec._A__test() #实例属性隐藏也同上:
print(anec._A__yc) # 结尾:
# python 并不是严格限制外部对私有属性的访问,以免封装滥用.
#真正的封装是,经过深入的思考,做出了良好的抽象,给出"完整且最小"的接口,并使得内部细节可以对外透明. # 面向对象的优点:
# 1.更好的结构化编程方式
# 2.封装明确内外
# 3.在语言成眠支持了归一化设计