강의

멘토링

커뮤니티

Inflearn Community Q&A

ssmhan52894's profile image
ssmhan52894

asked

Type Python! Correct class usage and object-oriented programming

클래스 변수 관련 질문입니다.

Written on

·

293

1

클래스 변수가 클래스 내부에서 정의되는 변수이고,
클래스 이름 뿐만 아니라 인스턴스 이름으로도 접근할 수 있다는 것을 이해했습니다.
 
하지만 클래스 변수가 어느 시점에 정의되는지 명확하게 이해하지 못했습니다.
인스턴스를 정의할때마다 클래스 변수가 재정의되면, 클래스 변수가 계속해서 초기화되는 것이므로 아닌 것 같고,
클래스 코드가 처음 실행될때 클래스 변수도 같이 정의되는 건가요?
추가적으로 클래스 내부에서 클래스 변수가 정의된 다음 다시 불러올 때 "클래스명.클래스변수"로 사용하던데,
왜 클래스 내부에서도 클래스 변수를 사용할 때 그냥 클래스변수 이름으로는 부르지 못하는 건가요?
클래스변수ooppython

Answer 1

0

amamov님의 프로필 이미지
amamov
Instructor

안녕하세요!

좋은 질문입니다.

1. 클래스 코드가 처음 실행될때 클래스 변수도 같이 정의되고 최초 한 번 초기화되는 것입니다.

2. 아래 코드처럼 클래스 내부에서도 사용가능합니다. 

class Hello:
hello = "hello"

def __init__(self):
print(self.hello) # hello 출력
print(Hello.hello) # hello 출력

Hello()
ssmhan52894's profile image
ssmhan52894

asked

Ask a question