python如果定义一个单底杠开头的内容,就是约定不希望外部调用他,而双底杠则是外部不能直接调用他,必须用_类名__内容名称
class People:
_from = earth
__comefrom = China
print(_People__comefrom)
封装是一个区分内外的思想,比如说你写的东西某些东西不想被外部直接调用,但是还不得不使用,就可以再定义一个接口函数使用他:
class Room:
def __init__(self,name,width,length,high):
self.name = name
self.__width = width
self.__length = length
self.high = high
def tell_area(self):
return self.__length * self.__width
p1 = Room('厨房',100,200,300)
area = p1.tell_area()
print(area)
内部就是内部,外部就是外部,内部怎么做的,外部不用去考虑