Может ли interface
расширить несколько интерфейсов в Java?
Может ли интерфейс расширять несколько интерфейсов в Java?
Ответ 1
Да, вы можете это сделать. Интерфейс может расширять несколько интерфейсов, как показано ниже:
interface Maininterface extends inter1, inter2, inter3 {
// methods
}
Один класс также может реализовывать несколько интерфейсов. Что делать, если два интерфейса имеют метод, определяющий одно и то же имя и подпись?
Есть сложная точка:
interface A {
void test();
}
interface B {
void test();
}
class C implements A, B {
@Override
public void test() {
}
}
Тогда одна реализация работает для обоих:).
Прочитайте мой полный пост здесь:
http://codeinventions.blogspot.com/2014/07/can-interface-extend-multiple.html
Ответ 2
Интерфейс может расширять несколько интерфейсов.
A класс может реализовать несколько интерфейсов.
Однако класс может только расширять один класс.
Осторожно, как вы используете слова extends
и implements
, говоря о interface
и class
.
Ответ 3
Может ли интерфейс расширять несколько интерфейсов в java?
Ответ: Да.
Согласно JLS
Интерфейс может быть объявлен прямым расширением одного или нескольких другие интерфейсы, что означает, что он неявно указывает всех членов типы, абстрактные методы и константы интерфейсов, которые он расширяет, за исключением любых типов членов и констант, которые он может скрывать.
Ответ 4
Вы можете расширить несколько Interfaces
, но вы не можете расширить несколько classes
.
Причина, по которой в Java не удается расширить несколько классов, - это плохой опыт на С++, где это возможно.
Альтернативой для наследования multipe является то, что класс может реализовывать несколько интерфейсов (или интерфейс может расширять несколько интерфейсов)
Ответ 5
Класс Java может распространять только один родительский класс. Множественное наследование не допускается. Однако интерфейсы не являются классами, а интерфейс может расширять несколько родительских интерфейсов.
например, посмотрите здесь: http://www.tutorialspoint.com/java/java_interfaces.htm
Ответ 6
Я думаю, что ваше замешательство заключается в множественном наследовании, в котором это плохой практике, и на Java это тоже невозможно. Тем не менее, реализация нескольких интерфейсов разрешена на Java, и это также безопасно.