다중 상속은 아래와 같은 모양입니다.
1269519728.bmp
이 때.. 대체 저 자식 클래스는 대체 아빠 엄마 중 누구의 댄스를 따라 출 것이란 말인가..
C++ 에서는 둘 중에 하나를 명시 해서 사용한다고 했던거 같은데 내 영역 바깥의 이야기라 말 안하는게 좋을 듯 합니다.

그런데 Java는 다중 상속이 아예 안되니까 저런 문제를 고민 안해도 될 것 같지만… 오산이라는거~

두 가지 경우가 있다고 생각합니다.
다이어그램을 보면서 이야기 해야 편할 듯 합니다.

1372970978.bmp
에러가 나지 않을 것으로 예상합니다. 그리고 Test 클래스는 당연히 SubClass에서 overring한 dance를 호출하게 될 것입니다.
하지만… 이게 정말 제대로 된건가… 의심이 된다. 부모 Class에 있는 dance를 재정의 하고 싶기도 하고..Dancible 인터페이스를 구현하고 싶을 수도 있을 것입니다. 그럼 dance() 메소드는 두 개가 되어야 하는거 아닌가요?? 메소드 이름이 같으면 할 일이 같다는 말은 되긴 하지만…그래도… 이상한데~

코딩을 해본 결과.. 예상과 일치했습니다.

또하나 다른 경우는 이제 예상이 되시겠지만, 아래와 같은 경우입니다.

1271408834.bmp
이 때도 역시 코드로 확인해 본 결과 에러가 발생하지 않습니다. 당연히.. 양쪽 인터페이스의 제약인 dance() 메소드를 구현해 줬기 때문에 별 탈 없이 돌아가지요. 하지만… ClunMania 인터페이스를 사용하는 나이트 클럽 클래스에서 춤을 추라고 시켰더니..탈춤을 추는 사태가 벌어 질 수도 있겠군요… 이거 어떻게 되는거죠?

모르겠군요.. ㄷㄷㄷ…