Циклическое наследование и интерфейсы - класс A не может реализовать интерфейс класса B, в то время как класс B реализует интерфейс A
Я имею:
public class A implements BListener {
public interface AListener {}
}
public class B implements AListener {
public interface BListener {}
}
Итак, если я правильно понимаю, циклическое наследование происходит потому, что:
Компилятор идет вA и говорит"эй, А реализует BListener, поехали искать BListener!"
Затем, когда он пытается найти BListener, он в конечном итоге добирается доB, в котором говорится:
«Эй, BListener, нужно, чтобы A находился внутри B! НО ПОДОЖДИТЕ! B нужен AListener! Пошли искать AListener!»
И тогда он доходит до А, повторяю. Я правильно понял?
Кстати, эта ошибка компиляции произошла со мной при разработке Android.