Cómo utilizar métodos abstractos en java

Ambas interfaces y clases abstractas tienen métodos abstractos en Java. Pero los métodos abstractos desempeñan papeles ligeramente diferentes en estos dos tipos de tipos de referencia. ¿Cómo puede mantener todo en orden en su mente?

Video: 16 - Clases y Métodos Abstractos (JavaPOO)

Lo primero que hay que hacer es recordar que nadie aprende acerca de los conceptos de programación orientada a objetos sin tener mucha práctica en la escritura de código. Si usted tiene r estás confundido, eso puede ser una buena cosa. Significa que has entendido lo suficiente para saber lo complicado que esto es. Cuanto más código que escriba, más cómodo se convertirá con las clases, interfaces, y todas estas otras ideas.

El siguiente paso es clasificar las diferencias en la forma en que se declara métodos abstractos. Aquí está la historia.

Utilizando (o no usar) métodos abstractos
En una clase ordinaria (no abstracta)En una InterfazEn una clase abstracta
Se permiten métodos abstractos?No
Puede contener una declaración de método del abstracto ¿palabra clave?No
Puede contener una declaración de método del defecto palabra (que significa “no abstracto”)?NoNo
Ni con el abstracto ni el defectono abstractaAbstractono abstracta

Ambas interfaces y clases abstractas tienen métodos abstractos. Así que usted puede preguntarse cómo se debe elegir entre declarar una interfaz y la declaración de una clase abstracta. De hecho, es posible que pedir tres programadores profesionales cómo las interfaces y clases abstractas se diferencian el uno del otro. Si lo hace, puede obtener cinco respuestas diferentes. (Sí, cinco respuestas- no tres respuestas.)

Interfaces y clases abstractas son bestias similares, y las nuevas características de Java 8 han añadido aún más similares que en las versiones anteriores de Java. Pero la idea básica es acerca de las relaciones entre las cosas.

  • La extensión de una subclase representa una es un relación.
  • La implementación de una interfaz representa una puede hacer relación.

Video: Tutorial # 16 Java NetBeans - CLASES Y MÉTODOS ABSTRACTOS

Si quieres más evidencia tangible de la diferencia entre una interfaz y una clase abstracta, considere esto: Una clase puede implementar muchas interfaces, pero una clase puede extender sólo a otra clase, incluso de que una clase es una clase abstracta. Así, después de haber declarado

Perro clase pública se extiende housepet

Video: Tutorial Java - como programar - 18 Objetos y Métodos Abstractos

no se puede realizar también Perro extender una Amigo clase. Pero se puede hacer Perro implementar una Befriendable interfaz. Y entonces usted puede hacer la misma Perro clase implemente una entrenable interfaz.

Y, si quieres una aún Más diferencia tangible entre una interfaz y una clase abstracta, aquí está uno para usted: Una interfaz no puede contener campos, no finales no estáticos.

Por lo tanto, allí. Interfaces y clases abstractas son diferentes entre sí. Pero si usted es nuevo en el juego, usted no debe preocuparse acerca de la diferencia. Basta con leer tanto código como sea posible, y no se asuste cuando vea un método abstracto. Eso es todo al respecto.

Artículos Relacionados