Cuadros de comparación
Bases para la comparación | Se extiende | Implementos |
---|---|---|
BASIC | La palabra clave extended se utiliza para crear una subclase utilizando las características de una superclase. | La palabra clave implementa se utiliza para la implementación de una interfaz |
Métodos | La palabra clave extended no puede anular todos los métodos de una súper clase. | La palabra clave implementa tiene que implementar todos los métodos de una interfaz implementada. |
Clase | Una clase puede extender solo una súper clase. | Una clase puede implementar múltiples espacios. |
Interfaz | Una interfaz puede extender más de una interfaz. | Una interfaz no puede implementar otra interfaz. |
Definición de palabra clave se extiende
La herencia, que es un concepto importante en la programación orientada a objetos, se logra cuando una subclase se extiende a otra superclase. Una subclase puede extender solo una superclase. Una clase nunca puede extender más de una súper clase en Java. Cuando una clase extiende otra clase, puede anular los métodos definidos en una superclase. Entendamos que la palabra clave se extiende con la ayuda de un ejemplo.
clase A {Cuerda s; A (String s1) {s = s1; } // mostrar cadena void display () {System.out.println (+ s); }} la clase B se extiende A {String i; B (String s1, String i1) {super (s1); i = i1; } dispaly void () {super.dispaly (); / * pantalla () de la clase A invocada. * / System.out.println (+ i); }} clase Override {public static void main (String args []) {B ob = new B (Tech, Differences); ob.display (); / * visualización de la clase B invocada * /}} / * out put * / Tech Differences
En el código anterior, puede observar que la clase B tiene la clase A extendida y ha anulado la visualización del método () definida en la clase A. De manera similar, una interfaz puede extender más de una interfaz a la vez. Como la interfaz no tiene que implementar ningún método de la interfaz extendida, por lo tanto, se permite heredar varias interfaces a la vez.
Definición de la palabra clave implementa
Usando los implementos de palabras clave, una clase hereda todos los métodos en una interfaz. Cuando una clase implementa una interfaz, esa clase tiene que implementar todos los métodos de la interfaz implementada. Una interfaz nunca puede implementar otra interfaz, ya que implementa una palabra clave que promete la implementación de los métodos, pero una interfaz nunca implementa métodos en ella, por lo que es imposible que una interfaz implemente otra interfaz. Entendamos implementos de palabras clave con la ayuda de un ejemplo.
cadenas de interfaz {visualización nula (Cadena s); } interfaz entero {void show (int i); } clase Demo implementa cadenas, entero {void show (int i) {System.Out.Println ("valor entero:" + i); } visualización vacía (String s) {System.Out.Println ("string value:" + s); }} class Demo_main {public static void main (string args []) {Demo d = new Demo (); d.display ("TechDifferences"); d.show (2); }} / * salida * / TechDifferences 2
Como en el código anterior, puede ver que la demostración de clase implementa dos interfaces de cadenas y enteros y ha implementado los métodos declarados en ambas interfaces que son display () y show ().
Diferencias clave entre extensiones e implementos
- Una clase puede heredar otra clase, o una interfaz hereda otras interfaces usando una palabra clave extendida, mientras que una clase puede implementar una interfaz usando implementos de una palabra clave.
- Una subclase que extiende una superclase puede o no anular todos los métodos en una superclase. Por otro lado, una clase que implementa una interfaz debe definir / implementar todos los métodos de esa interfaz.
- Una clase puede implementar cualquier número de una interfaz al mismo tiempo. Por otro lado, una clase puede extender solo una súper clase.
- Una interfaz puede ampliar cualquier número de interfaces, pero una interfaz nunca puede implementar cualquier otra interfaz como medios de implementación que definen los métodos y la interfaz siempre tiene métodos abstractos, por lo que una interfaz nunca puede implementar otra interfaz.
Conclusión:
Concluyo la discusión diciendo que la implementación de una interfaz hace que el código sea más flexible que extender una clase. Como evita la restricción de heredar solo una súper clase en Java. El uso de la palabra clave implementa una clase puede heredar características de más de una interfaz.