una multiple interfaz interfaces instanciar herencia hacer ejemplos diferencia como clases clase abstractos abstractas abstraccion java inheritance multiple-inheritance extends

multiple - ¿Puede una interfaz extender múltiples interfaces en Java?



instanciar una interfaz java (6)

¿Puede una interfaz extender múltiples interfaces en java?

La respuesta es: sí.

De acuerdo con JLS

Se puede declarar que una interfaz es una extensión directa de una o más interfaces, lo que significa que especifica implícitamente todos los tipos de miembros, métodos abstractos y constantes de las interfaces que extiende, excepto por los tipos de miembros y constantes que puede ocultar.

¿Puede una interface extender múltiples interfaces en Java?


Una clase Java solo puede extender una clase principal. La herencia múltiple no está permitida. Sin embargo, las interfaces no son clases, y una interfaz puede extender más de una interfaz principal.

por ejemplo, mira aquí: http://www.tutorialspoint.com/java/java_interfaces.htm


Creo que su confusión radica en la herencia múltiple, en la que es una mala práctica hacerlo y en Java esto tampoco es posible. Sin embargo, la implementación de múltiples interfaces está permitida en Java y también es segura.


Puede extender múltiples Interfaces pero no puede extender múltiples classes .

La razón por la que no es posible extender varias clases en Java es la mala experiencia de C ++ donde esto es posible.

La alternativa para la herencia multipe es que una clase puede implementar múltiples interfaces (o una interfaz puede extender múltiples interfaces)


Si, puedes hacerlo. Una interfaz puede extender múltiples interfaces, como se muestra aquí:

interface Maininterface extends inter1, inter2, inter3 { // methods }

Una sola clase también puede implementar múltiples interfaces. ¿Qué sucede si dos interfaces tienen un método que define el mismo nombre y firma?

Hay un punto complicado:

interface A { void test(); } interface B { void test(); } class C implements A, B { @Override public void test() { } }

Entonces, la implementación única funciona para ambos :).

Lee mi publicación completa aquí:

http://codeinventions.blogspot.com/2014/07/can-interface-extend-multiple.html


Una interfaz puede extender múltiples interfaces .

Una clase puede implementar múltiples interfaces .

Sin embargo, una clase solo puede extender una sola clase .

Con cuidado, la forma de usar las palabras se extends e implements cuando se habla de la interface y la class .