封装:提高程序的安全性
1. 将数据(属性)和行为(方法)包装到类对象中。在方法内部对属性进行操作,在类对象的外部调用方法。这样,无需关心方法内部的具体实现细节,从而隔离了复杂度。
2. 在Python中没有专门的修饰符用于属性的私有,如果该属性不希望在类对象外部被访问,前边使用两个“_” 。
1.
1 class Car: 2 def __init__(self,brand): 3 self.brand=brand 4 def start(self): 5 print('汽车已启动') 6 car=Car('宝马X5') 7 car.start() #汽车已启动 8 print(car.brand) #宝马X5
2.
class Student: def __init__(self,name,age): self.name=name '''年龄不希望在类的外部被使用,所以加了两个_''' self.__age=name #年龄不希望在类的外部被使用,所以加了两个_ def show(self): ''' 加了两个_,类的内部还是能调用 ''' print(self.name,self.__age) #加了两个_,类的内部还是能调用 stu=Student('张三',20) stu.show() #age信息不显示,因两个_无法调用 print(stu.name) #print(stu.__age) #age信息不显示,因两个_无法调用 #print(dir(stu)) #查出 name 为 _Student__age print(stu._Student__age) #在类的外部可以通过 _Student__age 进行访问,但不支持访问