Python 연구 노트 (11) : 객체 지향 패키징

1. 캡슐화의 의미

  • 속성과 메서드를 전체적으로 합친 다음 개체를 인스턴스화하여 처리합니다.

  • 내부 구현 세부 정보를 숨기고 개체와 해당 속성 및 메서드와 상호 작용하기 만하면됩니다.

  • 2. 액세스 권한 제어를 클래스의 속성 및 메소드에 추가하십시오.

2. 개인 속성 값 수정

  • 속성과 메소드 이름 앞에 두 개의 밑줄 '__'이 추가되면 속성과 메소드가 비공개 권한임을 나타냅니다.
  • get_xxx () 및 set_xxx () 메서드를 사용하여 개인 속성 값을 가져오고 수정합니다.

샘플 코드는 다음과 같습니다.

# 定义一个Master类
class Master(object):
    def __init__(self):
        self.formula = "古法煎饼果子配方"
        self.__sal = 10000

    def make_cake(self):
        print("[古法]按照{}制作一份煎饼果子".format(self.formula))

    # 获取私有属性值
    def get_sal(self):
        return self.__sal

    # 接收参数,修改私有属性值
    def set_sal(self, sal):
        self.__sal = sal

# 定义一个子类Prentice,继承了父类Master
class Prentice(Master):
    pass

# 实例化一个子类对象crystal
crystal = Prentice()
crystal.make_cake()

# 获取私有属性值
print(crystal.get_sal())

출력은 다음과 같습니다.

[古法]按照古法煎饼果子配方制作一份煎饼果子
10000

 

추천

출처blog.csdn.net/weixin_44679832/article/details/114341060