31 HERENCIA

Páginas: 9 (2101 palabras) Publicado: 20 de agosto de 2015
EJERCICIO GUIADO. JAVA: POO. HERENCIA

Concepto de Herencia

El concepto de Herencia consiste en crear una nueva Clase a partir de otra. La nueva Clase es una mejora de la anterior. O dicho de otra manera, es una especialización de la primera Clase.

Concretamente, la Herencia consiste en tomar una Clase inicial, y, a partir de ella, crear otra Clase que posee las mismas propiedades y métodosque la Clase inicial, además de unas nuevas propiedades y métodos que la Clase inicial no poseía. La nueva Clase creada puede incluso redefinir métodos de la Clase inicial.













La Clase inicial se denomina Clase Base, la Clase creada a partir de la clase base se denomina Clase Derivada. La Clase Derivada contiene propiedades y métodos de la Clase Base más unas propiedades y métodosañadidos.


La Herencia es una técnica muy útil que nos permite reutilizar código, es decir, que nos permite usar de nuevo lo que ya teníamos programado añadiendo simplemente algunos cambios adecuar el código al proyecto actual.

La Herencia se puede aplicar tanto a Clases Propias, como a Clases propias del lenguaje de programación Java.


En esta explicación guiada, veremos un ejemplo de uso de laHerencia con clases propias del lenguaje Java.

EJERCICIO GUIADO


Planteamiento Inicial


“Botones Contadores”

Supongamos que en los proyectos cotidianos se plantea la necesidad de usar botones que guarden el número de veces que son pulsados. Estos botones funcionarían exactamente igual que los botones normales (JButton) y tendrían su mismo aspecto, pero sería interesante que además tuvieran lossiguientes métodos:

Método setPulsaciones.
Permitirá asignar un número de pulsaciones al botón.

btnContar.setPulsaciones(3);
//Se asignan 3 pulsaciones al botón btnContar


Método getPulsaciones.
Permitirá saber cuantas pulsaciones tiene un botón.

int p = btnContar.getPulsaciones(3);
//Se recoge el número de pulsaciones del botón btnContar
//en la variable p

Método incrementa.
Permite incrementaren uno las pulsaciones que tiene un botón.

btnContar.incrementa();
//Incrementa en uno las pulsaciones del botón btnContar

Método decrementa.
Permite decrementar en uno las pulsaciones que tiene un botón

btnContar.decrementa();
//Decrementa en uno las pulsaciones del botón btnContar

Método reiniciar.
Permite colocar las pulsaciones de un botón a cero.

btnContar.reiniciar();
//Sitúa a cerolas pulsaciones del botón btnContar

Método aumentar.
Permite aumentar en una determinada cantidad las pulsaciones del botón.

btnContar.aumentar(4);
//Aumenta en cuatro las pulsaciones del botón btnContar

Método disminuir.
Permite disminuir en una determinada cantidad las pulsaciones del botón.

btnContar.disminuir(6);
//Disminuye en 6 las pulsaciones del botón btnContar


Los botones de este tipotendrían una propiedad llamada pulsaciones de tipo entera que se inicializaría a cero en el momento de construir el botón.

Desgraciadamente no existe un botón de este tipo en Java, así que no podemos acudir a la ventana de diseño y añadir un botón como este.

Una posibilidad sería la de programar la clase correspondiente a un botón de este tipo desde cero, pero esto es un trabajo tremendamentecomplejo.

La solución a este problema es la Herencia. Básicamente, lo que necesitamos es mejorar la Clase JButton, la cual define botones normales y corrientes, de forma que estos botones admitan también los métodos indicados antes.

La idea es crear una nueva clase a partir de la clase JButton. A esta nueva clase la llamaremos BotonContador y haremos que herede de la clase JButton. Por tanto, laclase BotonContador tendrá todas las características de los JButton y además le añadiremos los métodos mencionados antes.














Gracias a la herencia, nuestra clase BotonContador poseerá todos los métodos de los JButton (setText, getText, setForeground, setToolTipText, etc.) sin que tengamos que programar estos métodos.

Por otro lado, añadiremos a la clase BotonContador nuestros...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • 31
  • 31
  • 31
  • 31
  • La herencia
  • Herencia
  • la herencia
  • la herencia

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS