¿Cuál es el uso del método abstracto en Java?



Este artículo sobre el método abstracto en Java lo ayudará a aprender cómo lograr la abstracción al usar clases y métodos abstractos de programación en Java

En cualquier lenguaje de programación, abstracción significa ocultar al usuario los detalles irrelevantes para centrarse solo en los detalles esenciales para aumentar la eficiencia y reducir así la complejidad. En Java, la abstracción se logra usandoclases y métodos abstractos. Conozcamos más sobre el método abstracto en .

Los temas tratados en este artículo son los siguientes:





¿Que es una clase abstracta?

En cualquier , una clase que se declara con la palabra clave abstracto se conoce como clase abstracta. Un clase abstracta captura características comunes de subclases y puede contener o no cualquier método abstracto . No se puede crear una instancia, pero sus subclases solo pueden usarlo como una superclase.

cómo imprimir el registro de confirmación de git

A continuación se enumeran algunos puntos clave con respecto a la clase abstracta:



  • Una clase abstracta puede tener constructores y métodos estáticos
  • Puede tener métodos finales , obligan a la subclase a no cambiar el cuerpo del método
  • Puede usar una clase abstracta heredandola de otra clase y luego proporcionar implementaciones a los métodos abstractos en ella
  • Si una clase abstracta no tiene implementación de ningún método, siempre es mejor usar interfaz

Un resumen declarado de clase puede incluir o no métodos abstractos. Pero, ¿qué es exactamente un método abstracto?

¿Qué es un método abstracto?

Un método declarado sin cuerpo (sin implementación)dentro de una clase abstracta es un método abstracto. En otras palabras, si quieres un clase para contener un método en particular, pero desea que la implementación real de ese método sea determinada por las clases secundarias, entonces puede declarar el método en la clase principal como un resumen.

binario a decimal en java

Así es como se ve un método abstracto en Java:



hábitat vacío público abstracto ()

Características clave del método abstracto

A continuación se enumeran las características clave del método abstracto:

  • Los métodos abstractos no tienen una implementación (cuerpo), solo tienen una firma de método como se muestra en el ejemplo anterior
  • Si una clase tiene un método abstracto, debe declararse abstracto, lo contrario no es cierto
  • En lugar de llaves, un método abstracto tendrá un punto y coma () al final
  • Si un clase regular extiende una clase abstracta, entonces la clase debe tener que implementar todos los métodos abstractos de esa clase o también debe ser declarada abstracta

Programa de ejemplo: método abstracto en Java

Consulte el programa de ejemplo para comprender cómo se logra la abstracción utilizando clases abstractas y métodos abstractos. Eche un vistazo.

package MyPackage // clase abstracta clase abstracta Animal {String AnimalName = '' Animal (String name) {this.AnimalName = name} // declara métodos no abstractos // tiene implementación predeterminada public void BasicInfo (String details) {System. out.println (this.AnimalName + '' + detalles)} // métodos abstractos que serán // implementados por su (s) subclase (s) abstract public void habitat () abstract public void respiración ()} class Terrestrial extensions Animal {// constructor Terrestrial (String name) {super (name)} @Override public void habitat () {System.out.println ('dejar en tierra y')} @Override public void respiration () {System.out.println ('respire a través de los pulmones o la tráquea. ')}} class Aquatic extiende Animal {// constructor Aquatic (String name) {super (name)} @Override public void habitat () {System.out.println (' Sale en el agua y ') } @Override public void respiration () {System.out.println ('respirar a través de branquias o su piel.')}} Class AbstractClassDemo {public static voi d main (String [] args) {// creando el Objeto de la clase Terrestre // y usando la referencia de la clase Animal. Animal object1 = new Terrestrial ('Humans') object1.BasicInfo ('son seres terrestres, ellos') object1.habitat () object1.respiration () System.out.println ('') // creando los Objetos de la clase circular Animal object2 = new Aquatic ('Peces') object2.BasicInfo ('son seres acuáticos, ellos') object2.habitat () object2.respiration ()}}

Salida:

El método Información básica () es un que es utilizado por ambos Terrestre y Acuático clases. Los métodos habitat() y respiración() son métodos abstractos y no tienen ninguna implementación, solo la firma. Terrestre y Acuático las clases tienen que proporcionar su propia implementación para ambos métodos. Además, observe que ambos métodos comienzan con la palabra clave abstracto . En este punto, es posible que se pregunte cómo es clase abstracta diferente de interfaz .

Interfaz en Java

Otra forma de lograr abstracción en Java es usando interfaces . Una interfaz es una colección de métodos abstractos, no tiene ningún contenido concreto. , a diferencia de una clase abstracta. Pero a diferencia de la clase abstracta, una interfaz proporciona una abstracción completa en Java. Puede tener métodos y variables como una clase. Sin embargo, los métodos declarados en una interfaz son abstractos por defecto.

Las clases e interfaces abstractas son los dos bloques de construcción principalesdel . Aunque ambos se utilizan principalmente para la abstracción, son muy diferentes entre sí y no se pueden utilizar indistintamente.

Esto nos lleva al final de este artículo sobre 'Método abstracto en Java'. He cubierto una de las preguntas más frecuentes. , que es una clase abstracta en Java.

estructura de un programa java

Asegúrese de practicar tanto como sea posible y revertir su experiencia.

Revisar la por Edureka, una empresa de aprendizaje en línea de confianza con una red de más de 250.000 alumnos satisfechos repartidos por todo el mundo. Tienes una pregunta para nosotros? Menciónelo en la sección de comentarios de este 'Método abstracto en Java'. artículo y nos pondremos en contacto con usted lo antes posible.