• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

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

21.12.29 10:42 작성 조회수 164

1

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

답변 1

답변을 작성해보세요.

0

안녕하세요!

좋은 질문입니다.

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

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

class Hello:
hello = "hello"

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

Hello()