-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
파이썬 클래스의 소멸자에 관한 질문입니다
22.03.06 22:05 작성 조회수 152
0
안녕하세요, 클래스 소멸자에 관한 더 깊은 내용이 궁금해서 구글링을 해 봤는데요
다음과 같은 코드에서 의문점이 몇 가지 생겼습니다.
우선 위의 코드를 그대로 실행하면
Calling Create_obj() function...
Making Object...
Employee created
function end...
Program End...
Destructor called
순으로 결과가 출력됩니다.
여기서 제가 궁금한 첫번째는 위의 코드에서
return obj
이 부분은 어떤 의미를 가지고 있는가 입니다.
obj라는 인스턴스를 생성한 후, return 한 것으로 보이는데, 정확히 어떤 기능을 하는 코드인지가 궁금합니다.
그리고, 위의 return obj
부분을 지운 후 코드를 실행하면
즉,
다음의 코드를 실행하면 출력 결과가
Calling Create_obj() function...
Making Object...
Employee created
function end...
Destructor called
Program End...
이렇게 나오며 소멸자의 호출 순서가 달라지는 것을 확인할 수 있었습니다. 왜 소멸자의 호출 순서가 달라지는 것인지 그 이유가 궁금합니다.
답변을 작성해보세요.
0
좋은사람
지식공유자2022.03.07
해당 클래스 자기자신을 반환합니다.
세부적으로 설명하기 위해서는 아래 내용을 검색하셔서 클래스 생성 과정을
읽어보시기를 추천드려요.
파이썬 디스크립터, Type 함수를 사용한 클래스 생성 원리 등을
검색해 보시면 됩니다.
답변 1