캡슐화
데이터와 해당 데이터를 조작하는 메서드를 하나의 단위, 즉 클래스 안에 묶는 것을 말합니다. 이 메커니즘은 외부로부터 데이터를 숨기고 무단 액세스를 방지합니다. 예제를 보겠습니다.
class Car:
def __init__(self, make, model, year):
self.make = make
self.model = model
self.year = year
self.__mileage = 0 # private attribute
def drive(self, miles):
if miles > 0:
self.__mileage += miles
else:
print("0보다 커야 합니다!")
def get_mileage(self):
return self.__mileage