1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Python의 객체 지향 프로그래밍

Connected

Bài tập

프로퍼티 생성 및 설정하기

프로퍼티를 정의하려면 두 가지 단계가 있어요:

  • 먼저, 데이터를 담을 "내부" 속성을 정의하세요.
  • 그리고 나서, 이름이 곧 프로퍼티 이름인 메서드에 @property 데코레이터를 붙이고, 그 메서드에서 데이터를 저장하는 내부 속성을 반환하도록 하세요.

맞춤형 setter 메서드도 정의하려면 추가 단계가 필요해요:

  • 프로퍼티 이름과 동일한 이름의 또 다른 메서드를 정의하고, @prop_name.setter 데코레이터를 붙이세요. 여기서 prop_name은 프로퍼티 이름이에요. 이 메서드는 두 개의 인수 — 항상 들어가는 self와, 프로퍼티에 할당될 값 — 를 받아야 해요.

이번 연습에서는 Customer 클래스에 balance 프로퍼티를 만들게 됩니다. 이전에 사용했던 balance 속성보다 더 나은, 접근을 제어할 수 있는 버전이에요.

Hướng dẫn 1/4

undefined XP
    1
    2
    3
    4

Customer 클래스를 만들고, __init__() 메서드는 다음을 수행하게 하세요:

  • 매개변수 name과 new_bal을 받습니다.
  • name을 속성 name에 할당합니다.
  • new_bal이 음수이면 ValueError를 발생시킵니다.
  • 그렇지 않으면 new_bal을 속성 _balance(밑줄 포함)에 할당합니다.