일단, 자바에서 다중 상속이 안 되는 이유가 무엇인가?특정 클래스를 상속받는다고 할 때, 자식 클래스에서 오버라이딩 하지 않은 부모 클래스의 메서드가 있다고 치자. 그런데 하필이면 A라는 부모에게도 m이라는 메서드가 있고, B라는 부모에게도 m이라는 메서드가 있다. 이 상황에서 m이라는 메서드를 호출할 때, A 클래스와 B 클래스 중 어느 부모 클래스의 메서드를 호출해야 하는가? 명확한 답이 없을 뿐더러 심각한 문제를 발생시킬 여지가 있다. 때문에, 자바에서는 다이아몬드 문제를 막고자 클래스의 다중 상속을 금지시킨다. 관련 게시물: 다이아몬드 문제 반면, 인터페이스는 다중 구현을 허용한다. 그 이유는 무엇인가? 인터페이스는 인터페이스를 구현하는 곳에서 해당 기능을 모두 구현해야만 한다. 각기 다른 인터페..