Backend/Python

Python 파이썬 생성자 객체 생성 순서

쏠솔랄라 2023. 7. 4. 07:52

 

 

생성자

 

: __init__
: 객체 생성시 단 한번만 호출되는 멤버 메소드

 


객체 초기 설정을 위해서 사용한다
공부하는 동안 주로 멤버변수 초기화의 용도로 사용할 것
멤버변수 생성 ; 다른 객체의 값 셋팅

객체 생성 순서
공간 할당 -> 생성자 호출

생성자는 정의 하지 않으면 자동으로 만들어 진다 ; 코드없음 ; 기능 없음
객체 생성 순서 유지를 위해서 만들어진다

-> None
: 반환값의 형태를 명시하는 부분
반환값이 없다

 


self == this
: 자기 자신을 호출한 인스턴스공간의 정보를 저장하는  참조형변수

멤버 메소드에서만 사용 가능한 매개변수
멤버 메소드라면 반드시 적혀야 한다
인자값은 넣지 않아도 자동으로 참조 된다
멤버를 참조하기위한 참조형변수

 

 

class Info:
    
    count = 0 

    def __init__(self,name = None,age = 0) -> None:
        print("생성자 호출")
        Info.count += 1
        self.name = name # 인스턴스 멤버 변수
        self.age = age

    def disp(self):
        print(Info.count)# 권장방식
        #print(self.count)# 비권장방식
        print("이름 : {}".format(self.name))
        print("나이 : {}".format(self.age))
        Info.count = 3
        #print("키 : {:.2f}".format(self.height))

a = Info("김모씨",20)
print(a.count)
a.disp()

b = Info("신모씨",27)
a.disp()
b.disp()
print(Info.count)
print(a.count)
print(b.count)

 

출력화면