class 의 인스턴스와 클래스 간의 이해(2)
class CounterManager:
insCount = 0;
def __init__(self):
CounterManager.insCount += 1;
def printInstaceCount():
print("Instance Count" , CounterManager.insCount);
a,b,c = CounterManager(),CounterManager(),CounterManager();
CounterManager.printInstaceCount();
출력문:
I
nstance Count 3
위의 소스를 보면 클래스가 자기 자신의 변수에 같을 증가 하는것을 볼수 있다.
자 그럼 다음 소스와 차이점을 느껴보자
class CounterManager:
insCount = 0;
def __init__(self):
self.insCount += 1;
def printInstaceCount(self):
print("Instance Count" , self.insCount);
a,b,c = CounterManager(),CounterManager(),CounterManager();
a.printInstaceCount();
a.__class__.insCount = 2;
a.printInstaceCount();
b.printInstaceCount();
d = CounterManager();
d.printInstaceCount();
출력문 :
Instance Count 1
Instance Count 1
Instance Count 1
Instance Count 3
2번째는 인스턴스 안의 insCount 를 증가 시킨것입니다 ^^