Guidelines
Practice
Guidelines

객체 속성을 관리하는 게터(Getter)와 세터(Setter)

클래스에서 게터(getter)와 세터(setter) 메소드는 객체의 속성을 간접적으로 접근하기 위해 사용합니다.

게터는 속성값을 읽을 때 사용하고, 세터는 속성값을 설정하거나 수정할 때 사용됩니다.

게터와 세터는 객체의 데이터를 보호하고, 데이터의 유효성 검사를 수행할 때 유용합니다.

파이썬에서는 @property 데코레이터를 사용하거나 직접 게터와 세터를 구현할 수 있습니다.


데코레이터 없이 구현하기

  • 게터(Getter) 메소드는 클래스의 속성을 반환합니다. 일반적으로 get_속성명 형식으로 이름을 지정합니다.

  • 세터(Setter) 메소드는 클래스의 속성을 설정하거나 수정합니다. 일반적으로 set_속성명 형식으로 이름을 지정합니다.

게터와 세터 사용 예시
class Person: def __init__(self, name): self._name = name # 프라이빗 변수 def get_name(self): return self._name def set_name(self, value): if isinstance(value, str): self._name = value else: raise ValueError("이름은 문자열이어야 합니다.") # 클래스 사용 예시 person = Person("홍길동") print(person.get_name()) # '홍길동' 출력 person.set_name("박철수") # '박철수'로 이름 변경 print(person.get_name()) # '박철수' 출력 # 잘못된 값 설정 시도 (오류 발생) # person.set_name(123)

이 예제에서 Person 클래스는 _name이라는 프라이빗 변수를 가지고 있으며, get_name()set_name() 메소드를 통해 이 변수에 접근합니다.

set_name() 메소드는 값의 유효성을 검사하여 문자열이 아닌 경우 오류를 발생시킵니다.

Guidelines

AI Tutor

Publish

Design

Upload

Notes

Favorites

Help