소멸자의 호출에 관한 질문입니다
408
작성한 질문수 45
소멸자는 '객체가 소멸할 때 자동으로 호출되는 함수'라고 설명하셨는데 이게 정확히 어떤 원리인지 잘 모르겠습니다
위와 같이 코드를 작성해 보았는데요, 객체만 생성하였는데도 이를 실행하니까 __del__메소드의 내용까지 모두 실행되는 것을 확인할 수 있었습니다.
del obj 와 같은 코드를 입력해야 __del__메소드가 실행되는 것이 아닌가요??
뭐가 문제인지 궁금합니다
답변 1
0
안녕하세요.
프로그램이 종료 될 때 메모리에서 불필요한 부분 소거를 위해서 호출 되요~~
계속 실행되는 프로그램이 아니고 인터프리터가 종료 되기 때문에 실행됩니다.
0
답변 감사드립니다!! 그럼 한 클래스에서의 실행이 모두 끝났을 때 __del__이 있으면 소멸자가 자동으로 실행된다고 봐도 되는건가요?? del obj 같은 코드를 실행해야 __del__이 실행되는 것인지 헷갈리네요ㅠㅠ..
강의의 warehouse 예제에서는 del user1을 실행해야 stock_num이 1로 줄어들었는데, 어떤 차이점이 있는 것인지 잘 모르겠습니다..
그리고 __del__은 인자로 self 하나만을 가지고 있는데, 생성한 객체의 인자 수와 맞지 않아도 실행되는 이유가 궁금합니다
답답하실텐데 죄송합니다ㅠㅠ
자료 다운로드 위치 확인 부탁드립니다.
0
15
1
보라색 예약어
0
22
1
#을 붙이는 이유
0
20
1
실행이 안 되는데요.
0
19
1
print 문법 실행 안 돼요.
0
21
1
영문 계정
0
21
1
맥북에서 아이패드로 연결해서 보려고 하면 화면이 안뜹니다.
0
13
1
인스턴스 변수 문의
0
58
1
챕터 03_04 (튜플) 교육자료
0
59
2
Package(3-1) Sub 폴더 자료
0
48
1
아톰 출력 안됨
0
85
2
강의자료 메일 발송 요청 드립니다.
0
95
1
강의자료 메일로 보내주실 수 있으실까요?
1
59
0
Iterable 요소는 리스트로 작성해야하는 것 맞나요?
1
83
2
강의자료 부탁드립니다
0
77
2
if Flase: print('Bad')
0
76
1
=와 == 의 차이
0
96
1
functions 함수 섭들을려고하는데요
0
74
1
강의자료 부타드리겠습니다!
0
63
0
VSCODE에 VIEW에서 SELECTED INTERPRETER조회가 안됩니다.
0
72
1
강의자료 부탁드립니다.
0
59
0
dict의 Key를 바꾸는 방법
0
83
1
강의자료부탁드립니다
0
72
1
run withount 디버깅 및 F5+ctrl이 안먹혀요
0
69
1





