다중상속 편집하기
최신판 | 당신의 편집 | ||
94번째 줄: | 94번째 줄: | ||
많은 프로그래밍 언어들이 다이아몬드 문제에 대한 해결책을 제시하고 있는데 파이썬에서는 메서드 탐색 순서를 따른다. 파이썬은 다중 상속을 할 때 상속 클래스 목록 중 왼쪽에서 오른쪽 순서로 메서드를 찾는다. 그러므로 같은 메서드가 있다면 왼쪽에 있는 클래스 내의 메서드를 우선으로 한다. 만약 상속관계가 복잡하게 얽혀있다면 MRO 메서도를 사용해 살펴보는것이 편리하다.<ref name="자료5"> 코딩도장, 〈[https://dojang.io/mod/page/view.php?id=2388 다중 상속 사용하기]〉, 《코딩도장》</ref> | 많은 프로그래밍 언어들이 다이아몬드 문제에 대한 해결책을 제시하고 있는데 파이썬에서는 메서드 탐색 순서를 따른다. 파이썬은 다중 상속을 할 때 상속 클래스 목록 중 왼쪽에서 오른쪽 순서로 메서드를 찾는다. 그러므로 같은 메서드가 있다면 왼쪽에 있는 클래스 내의 메서드를 우선으로 한다. 만약 상속관계가 복잡하게 얽혀있다면 MRO 메서도를 사용해 살펴보는것이 편리하다.<ref name="자료5"> 코딩도장, 〈[https://dojang.io/mod/page/view.php?id=2388 다중 상속 사용하기]〉, 《코딩도장》</ref> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
===문제점=== | ===문제점=== | ||
152번째 줄: | 111번째 줄: | ||
* 김형수, 〈[https://m.blog.naver.com/PostView.nhn?blogId=there924&logNo=220857891926&proxyReferer=https%3A%2F%2Fwww.google.com%2F 객체지향(6) - 다중상속]〉, 《개인블로그》, 2016-11-10 | * 김형수, 〈[https://m.blog.naver.com/PostView.nhn?blogId=there924&logNo=220857891926&proxyReferer=https%3A%2F%2Fwww.google.com%2F 객체지향(6) - 다중상속]〉, 《개인블로그》, 2016-11-10 | ||
* 코딩도장, 〈[https://dojang.io/mod/page/view.php?id=2388 다중 상속 사용하기]〉, 《코딩도장》 | * 코딩도장, 〈[https://dojang.io/mod/page/view.php?id=2388 다중 상속 사용하기]〉, 《코딩도장》 | ||
− | |||
== 같이 보기 == | == 같이 보기 == | ||
162번째 줄: | 120번째 줄: | ||
* [[자바]] | * [[자바]] | ||
* [[C++]] | * [[C++]] | ||
− | |||
− | |||
* [[인터페이스]] | * [[인터페이스]] | ||
{{프로그래밍|검토 필요}} | {{프로그래밍|검토 필요}} |