클래스 자체 메서드 활용하기
클래스 메서드(Class Method)
는 클래스 자체를 첫 번째 인자로 받아서 실행하는 메서드입니다.
클래스 변수에 접근하거나 클래스 레벨에서 작업을 수행할 때 사용됩니다.
클래스 메서드는 @classmethod
데코레이터(다른 함수를 감싸는 함수로, 감싸진 함수의 기능 확장)로 정의합니다.
클래스 메서드 사용 예시
클래스 메서드는 인스턴스(self)
가 아닌 클래스 자체를 첫 번째 매개변수(cls)
로 받습니다.
클래스 메서드 사용 예시
class MyClass: # 클래스 변수 class_variable = "공통 값" # 클래스 메서드 정의 @classmethod def class_method(cls): return f"클래스 메서드 호출: {cls.class_variable}"
위 코드에서 class_method
는 클래스 메서드로, cls
매개변수를 통해 클래스 변수에 접근합니다.
클래스 메서드는 아래와 같이 클래스 이름 또는 인스턴스를 통해 호출할 수 있습니다.
클래스 메서드 호출
# 클래스 이름으로 호출 print(MyClass.class_method()) # 출력: 클래스 메서드 호출: 공통 값 # 인스턴스를 통해 호출 instance = MyClass() print(instance.class_method()) # 출력: 클래스 메서드 호출: 공통 값
클래스 메서드는 주로 클래스 변수를 읽거나 수정하는 작업을 수행할 때 사용됩니다.
클래스 메서드를 통한 클래스 변수 수정
class Counter: count = 0 # 클래스 변수 @classmethod def increment(cls): cls.count += 1 return cls.count # 클래스 메서드 호출 print(Counter.increment()) # 출력: 1 print(Counter.increment()) # 출력: 2
클래스 메서드는 인스턴스의 상태(인스턴스 변수)를 변경할 수 없으며, 클래스 변수나 클래스 자체를 조작하는 데 사용해야 합니다.
Mission
0 / 1
클래스 메서드는 객체 인스턴스를 생성하지 않고도 호출할 수 있다.
O
X
가이드라인
AI 튜터
배포
디자인
업로드
수업 노트
즐겨찾기
도움말
코드 에디터
코드 실행
코드 생성
실행 결과