파이썬에서 객체 생성과 관련해 생성자(__new__) 질문드려요.
조회수 668회
질문1
클래스로 객체를 생성할 경우,
클래스에 생성자 함수(__new__
)가 없어도 클래스로 객체를 생성할 수 있잖아요.
이때 파이썬 내부적으로는 사용자정의 클래스에 생성자가 없을 경우
최상위 클래스인 object클래스의 __new__
가 자동으로 실행되어 객체를 생성하고
그 객체를 반환받아 사용자정의 클래스의 객체가 되는 것인가요?
질문2
그렇다면 object클래스를 사용자가 임의의 변수 이름으로 사용해서 덮어쓰면(예 object = 1234) 사용자정의 클래스의 객체를 원천적으로 생성할 수 없게 되나요?
그런데 실제로 해보니 object를 임의의 다른 값으로 덮어써도 사용자 정의 클래스로 객체가 생성되네요.
클래스와 객체는 공부할수록 헷갈리는 게 많네요.
-
(•́ ✖ •̀)
알 수 없는 사용자 - 〉
댓글 입력