처리중입니다. 잠시만 기다려주세요.
TTJ 코딩클래스
정규반 단과 자료실 테크 뉴스 코딩 퀴즈
퀴즈 / Python / 문제

Python classmethod와 staticmethod의 차이점으로 올바른 것은?

보통 MDN Web Docs
보기 및 정답
A classmethod는 첫 인자로 클래스(cls)를 받지만, staticmethod는 클래스나 인스턴스를 인자로 받지 않는다
B staticmethod만 상속 관계에서 오버라이드가 가능하고, classmethod는 서브클래스에서 오버라이드가 불가능한 메서드이다
C classmethod는 인스턴스에서만 호출 가능하며, 클래스에서 직접 호출하면 TypeError가 발생한다
D staticmethod는 첫 번째 인자로 클래스(cls)를 자동으로 받아 클래스 변수에 접근할 수 있다

해설

@classmethod는 첫 인자로 클래스 자체(cls)를 받아 클래스 변수에 접근하거나 대안 생성자를 만들 때 사용합니다. @staticmethod는 self나 cls를 받지 않아 클래스와 무관한 유틸리티 함수지만, 논리적으로 클래스에 속할 때 사용합니다.

코딩, 제대로 배우고 싶다면?

개념 확인은 퀴즈로, 실력은 실전 프로젝트로.
투더제이 코딩클래스에서 시작하세요.

정규반 살펴보기