코드
class Cal:
def __init__(self, a, b):
self.__a = a
self.__b = b
def getA(self):
return self.__a
def setA(self, a):
self.__a = a
def getB(self):
return self.__b
def setB(self, b):
self.__b = b
def sum(self):
return self.__a + self.__b
def sub(self):
return self.__a - self.__b
def mul(self):
return self.__a * self.__b
def div(self):
return self.__a / self.__b
cal1 = Cal(1, 2)
print(cal1.__dict__["_Cal__a"])
- 인스턴스 변수가 _(private)형태로 정의된다면 외부에서 인스턴스.var로 접근할수 없다(has no attribute error)
- 인스턴스의 dict변수를 통해서는 접근이 가능하다(완벽한 접근 제어는 못한다.)