Está en la página 1de 5

Clases Abstractas

Integrantes:

Manuel Cruz- 506231040

Juan Salas--506231734

Sofia Polanco-507231023

Santiago Martinez-506231102

Tutora:

Judy Moreno

Fundación universitaria Konrad Lorenz

Bogotá

2024
Clases Abstractas en Java

La abstracción es un proceso que oculta los detalles de implementación y permite al

usuario concentrarse en la funcionalidad. Java, uno de los lenguajes de programación más

utilizados, aprovecha este concepto a través de las Clases Abstractas. Estas clases son una

herramienta poderosa para crear una base común y uniforme para otras clases relacionadas.

Entendiendo las Clases Abstractas de Java.

● Una clase abstracta en Java es una clase que no puede ser instanciada

directamente, es decir, no puedes crear un objeto de una clase abstracta.

● Está diseñada para ser extendida por otras clases.

● Puede incluir métodos abstractos (sin cuerpo) y métodos no abstractos

(con cuerpo).

● Proporciona una base para que las subclases extiendan e implementen los

métodos abstractos, asegurando así un cierto nivel de uniformidad en la interfaz de las

clases relacionadas.

Ejemplo de una clase abstracta:

Java abstract class Animal {

abstract void makeSound(); // Método abstracto (sin cuerpo)

void eat() {

System.out.println("El animal come"); // Método no abstracto (con cuerpo)

}
Extendiendo una Clase Abstracta para hacer uso de una clase abstracta, necesitamos crear

una nueva clase que extienda la clase abstracta y proporcione la implementación del método

abstracto. Por ejemplo:

Java class Dog extends Animal {

void makeSound() {

System.out.println("El perro ladra");

Las clases abstractas en Java tienen varias ventajas y desventajas:

Ventajas:

Abstracción: Permiten definir métodos sin proporcionar una implementación concreta,

lo que ayuda a establecer una interfaz común para clases derivadas.

Reutilización de código: Pueden contener métodos implementados que pueden ser

compartidos por varias subclases.

Forzando la implementación: Obligan a las subclases a proporcionar implementaciones

para los métodos abstractos, lo que garantiza consistencia en la implementación.

Desventajas:
Limitación a una única herencia: En Java, una clase puede heredar de una sola clase

abstracta, lo que puede ser restrictivo en ciertos casos.

Complejidad: Pueden añadir complejidad al diseño si no se usan adecuadamente,

especialmente en sistemas grandes.

Rigidez en el diseño: Pueden hacer que el diseño sea más rígido debido a la necesidad de

prever y definir comportamientos comunes en una clase abstracta desde el principio.

Puntos Importantes para recordar:

● Si una clase tiene un método abstracto, debe ser declarada abstracta.

● Una clase abstracta puede tener constructores y métodos estáticos también.

● Podemos tener una clase abstracta sin ningún método abstracto, lo que se

usa para prevenir la instanciación de la clase.

● Una clase abstracta puede extender otra clase abstracta o una clase no

abstracta y también puede implementar interfaces.

En resumen, las clases abstractas en Java son una herramienta poderosa para la creación

de jerarquías de clases que comparten comportamientos comunes. Permiten definir un conjunto

de métodos que las clases hijas deben implementar, lo que fomenta la coherencia y la

modularidad del código. Además, al proporcionar una estructura general, facilitan la extensión y

el mantenimiento del software a medida que evoluciona.


Bibliografía

Blasco, J. L. (22 de noviembre de 2023). https://openwebinars.net/. Obtenido de

https://openwebinars.net/:https://openwebinars.net/blog/introduccion-a-poo-en-java-clases-

abstractas/

También podría gustarte