La diferencia entre extensiones e implementaciones en clase
La diferencia entre extiende e implementa
1. En la declaración de la clase, use la palabra clave extiende para crear una subclase de la clase.
Una clase declara que utiliza una o más interfaces a través de la palabra clave implements.
extiende significa heredar una determinada clase. Después de la herencia, puede usar los métodos de la clase principal o puede anular los métodos de la clase principal.
implementa significa implementar múltiples interfaces; , y los métodos de las interfaces generalmente están vacíos y deben reescribirse antes de poder usarse
2. extends se hereda de la clase principal siempre que la clase no se declare como final o la clase. se define como abstracto, se puede heredar
En JAVA no se admite la herencia múltiple, pero se puede implementar mediante interfaces, por lo que es necesario utilizar implementos. La herencia solo puede heredar una clase, pero los implementos se pueden implementar. múltiples interfaces, simplemente sepárelas con comas. Por ejemplo:
la clase A extiende B implementa C, D, E
Notas sobre la implementación de la interfaz:
a. Implementar una interfaz es implementar todos los métodos de la interfaz (excepto las clases abstractas).
b. Los métodos en la interfaz son abstractos.
c. Varias clases no relacionadas pueden implementar la misma interfaz y una clase puede implementar múltiples interfaces no relacionadas.
A diferencia de Extends
extends, puede implementar la clase principal o puede llamar a this.parent() para inicializar la clase principal. Y sobrescribirá las variables o funciones definidas por la clase principal. La ventaja de esto es que el arquitecto puede definir la interfaz y dejar que el ingeniero la implemente. La eficiencia del desarrollo y los costos de desarrollo de todo el proyecto se reducen considerablemente. implementa, implementa la clase principal y las subclases no pueden anular los métodos o variables de la clase principal. Incluso si la subclase define las mismas variables o funciones que la clase principal, serán reemplazadas por la clase principal. El uso específico de estas dos implementaciones depende de la situación real del proyecto y los implementos no se pueden modificar. Solo se debe implementar específicamente la interfaz definida, o se puede modificar para una buena escalabilidad.