Conceptos básicos de JAVA2: POLIMORFISMO Y HERENCIA.
Continuamos leyendo el libro de JAVA7. El el turno de definir conceptos básicos de JAVA. Antes de construir la casa, debes tener buenos cimientos :)
Primero, definamos que, Java se basa en la programación orientada a objetos (object-oriented programming, OOP)
¿Qué es OPP?
OPP es un enfoque de programación.
Desde un punto de vista general, un programa se puede organizar de dos formas: sobre su código (lo que sucede) o sobre sus datos (lo que se ve afectado). La OOP organiza el programa en torno a los datos y el principio clave es el control del acceso al código por parte de los datos.
Se definen los datos y las rutinas que permiten actuar sobre los mismos. Así, un tipo de datos define el tipo de operaciones que se pueden aplicar sobre los datos.
Rasgos comunes de la programación orientada a objetos (OOP)
1.- Encapsulación. (Pincha sobre el enlace para más información.)
2.- Polimorfismo.
Palabra que tiene su origen en el idioma griego, que significa multiples formas. Un ejemplo sencillo, lo vemos en el volante de un coche, el volante (la interfaz) es el mismo independiente del mecanismo de control empleado. Es decir, funciona igual en todos los coches, por lo tanto si sabes manejar el volante, puedes conducir cualquier coche.
El concepto de polimorfismo suele expresarse como "una interfaz, múltiples métodos". Puedes diseñar una interfaz genérica para un grupo de actividades relacionadas.
3.- Herencia:
En palabras simples, es el proceso mediante el que un objeto puede adquirir las propiedades de otro objeto.
Pasamos a un ejemplo:
Una manzana reineta es parte de la clasificación manzana, que a su vez forma parte de la clasificación fruta, que depende de la clase alimento. Lo quiere decir que la clase alimento tiene determinadas cualidades que aplican logicamente a su subclase fruta. Ademas de las cualidades "heredadas de su clase padre" (clase desde la cual extiende), define cualidades propias (jugoza, dulce, etc). La clase manzana define las cualidades concretas de una manzana (crece en los árboles, no es tropical). Una manzana reineta hereda todas las cualidades de las clases anteriores y define sus características propias.
Sin el uso de jerarquías, cada objeto debería explicitamente definir cada una de sus cualidades, incluso, las que se repiten entre objetos u entre clases, que fácilmente podrían ser agrupadas jerarquicamente.
:) Gracias a la herencia solo debes definir las cualidades que lo hacen único dentro de la clase.
No hay comentarios:
Publicar un comentario