python - class类 (七) 三大特性 - 封装 结尾
封装:
# 封装 #第一层,类就是麻袋,本身就是一种封装 #第二层,类中定义私有的,至在类的内部使用,外部无法访问 #第三层,封装在于明确区分内外,使得类实现者可以修改封装内的东西二不影响外部调用者 #而外部调用者也可以知道自己可以使用哪些属性哪些不行. 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.在语言成眠支持了归一化设计
既要脚踏实地,也需仰望天空