파이썬 기반 클래스 오버라이드 개념과 혼동 스럽습니다. 나는 다른 클래스에서 같은 이름을 가진 두 개의 다른 함수를 가질 수 있다는 것을 배웠고, 객체가 어느 클래스에서 왔는지에 따라 객체에 대해 올바른 함수가 호출 될 것입니다. 그러나 저는 방금 수퍼 전화에 대해 배웠습니다. 그리고 과거의 시제를 되짚어 본다면 다시 사용할 기능을 사용할 수 있다는 것을 배웠습니다. 재정의 된 함수가 처음부터 사라지지 않았기 때문에 혼란 스럽습니다. 그렇습니까? 왜 슈퍼 콜을 사용하여 "복원"해야합니까?파이썬 클래스 오버라이드
답변
어린이 유형은 MRO에 처음이므로 부모 중 한 사람이 같은 방법을 사용하는 경우에도 해당 방법이 호출됩니다. super
상속 체인의 다음 링크에서 MRO를 "다시 시작"하고 상위 클래스에 속한 속성을 검색 할 수 있습니다.
MRO가 무엇인지 잘 모르겠습니다 만, 나는 당신이 말하는 것을 얻습니다. 그것에 대해 생각한 후에, 나는 (나 같은 프로그래밍 초보자가 도착한다) 대답을 가지고 있다고 생각한다. 이것이 올바른지 누가 알겠습니까? 파생 클래스의 개체는 파생 클래스의 재정의 된 함수 만 사용할 수 있습니다. ** super ** 객체가 기본 클래스의 원래 함수에 액세스 할 수 있습니다. –
MRO는 내 대답의 링크에서 설명합니다. –
나는 파이썬에 대한 유일한 노출이 codeacademy이기 때문에 그것을 이해하는 데 어려움을 겪고있다. –
- 1. 내장 클래스 오버라이드, 특히 사전 클래스
- 2. 파이썬 모듈 오버라이드
- 3. Tigase OfflineMessages 클래스 오버라이드
- 4. 클래스 멤버 변수를 오버라이드
- 5. 루비의 클래스 메소드 오버라이드
- 6. 드라이버 클래스 함수 오버라이드
- 7. 오버라이드 모듈 클래스 메서드
- 8. WAR 클래스 오버라이드 디렉토리
- 9. 자바 스크립트의 CSS 클래스 오버라이드
- 10. 프라임 오버라이드 GMap 렌더러 클래스
- 11. 오버라이드 클래스에 C# 캐스트 클래스
- 12. 심포니 오버라이드 BaseForm 클래스 하우투
- 13. 오버라이드 기능의 새로운 클래스 C#
- 14. 오버라이드 된 메서드 호출, 오버라이드 된 메서드 호출 수퍼 클래스
- 15. 단일 클래스 파이썬 목록
- 16. 파이썬, 왜 Popen.stdout을 오버라이드 할 수 없습니까?
- 17. 장고 오버라이드 (override)하는 파이썬 site.py 인코딩
- 18. 오이 오버라이드 오버라이드
- 19. 장고 클래스 오버라이드 실패 시스템 검사
- 20. Clojure의 자바 수퍼 클래스 메소드 오버라이드
- 21. 실버 라이트 Async 서비스 오버라이드 클래스 멤버
- 22. 메서드 오버라이드 및 메서드 오버로드가 추상 클래스
- 23. 자바 스크립트 오버라이드 문제 클래스 xml
- 24. 안드로이드 프로젝트에서 Gradle과 동일한 패키지로 클래스 오버라이드
- 25. Grails 플러그인 개발 - 도메인 클래스 오버라이드
- 26. 부트 스트랩 typeahead CSS 클래스 오버라이드
- 27. 클래스 방법 : 이클립스 내 메소드를 오버라이드 (override)
- 28. Magento 클래스 메서드 오버라이드 작동하지 않음
- 29. 구성원 함수가 전체 클래스 계층을 오버라이드
- 30. 오버라이드 (override) 기능을 기본 클래스 목록
이 링크는 파이썬에서 메소드 확인 순서를 이해하는 데 도움이 될 수 있습니다. http://python-history.blogspot.com/2010/06/method-resolution-order.html – ozgur