Ситуация, когда множественное наследование вызывает проблемы, заключается в том, что член определяется по-разному на разных путях наследования. По крайней мере, за несколько дней до того, как Java разрешил реализации интерфейса по умолчанию в середине иерархии, невозможно было определить часть интерфейса конфликтующим образом на разных путях наследования, поскольку фактическая реализация каждого члена интерфейса будет должны содержаться в классе, который его реализует. Даже если интерфейс включает в себя Interface1.Method1
как напрямую, так и через Interface2
, один и тот же метод в реализующем классе будет использоваться для удовлетворения членов обоих интерфейсов.