퀴즈 / 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를 받지 않아 클래스와 무관한 유틸리티 함수지만, 논리적으로 클래스에 속할 때 사용합니다.

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

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

정규반 살펴보기
START THE LOOP · CHOOSE

시장과 사람의 답을 봤다면,
다음 결과물의 구조를 고릅니다.

한 번의 결과에 기대지 않고 다시 만들 수 있도록, 문제 발견부터 제작·배포·수익화까지 이어지는 전체 흐름을 익혀보세요.

TTJ CLASS에서 다음 구조 고르기
처리 중...