lunes, 27 de enero de 2014

Tutorial Java en Linux Basico 7

En esta ocasión veremos Herencia.

En el tutorial pasado vimos como crear objetos desde clases,en el tutorial pasado vimos como crear objetos simples pero si necesitamos crear un objeto similar a otro o que tenga que ver podemos usar la herencia para ahorrarnos trabajo:

En el tutorial pasado vimos esto:


1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
public class Animales {
 private String especie;
 private String sexo;
 private boolean hambre = true;
 public Animales(String e,String s) {
  especie = e;
  sexo = s;
 }
 public String getSexo() {
  return this.sexo;
 }
 public String getEspecie() {
  return this.especie;
 }
 public void tienesHambre() {
  if (hambre)
   System.out.println("Tengo hambre :(");
  else 
   System.out.println("No tengo hambre :D");
 }
 public void darDeComer() {
  this.hambre = false;
 }
}

De esa clase podemos crear un objeto animal con el sexo la especie y ver si tiene hambre,pero ahora si quisiéramos crear por ejemplo un Perro,podríamos escribir esos métodos en el archivo de la clase Perro,pero con java podemos ahorrarnos eso haciendo uso de la herencia.

Para heredar de una clase usamos el token extends al lado de la definición de la clase,por ejemplo:

1
public class Perro extends Animales { ... 

De esa manera estamos heredando las funciones y variables de Animales,pero aun no,no hasta que iniciemos el constructor de la clase padre,para esto se usa el token super,que seria la función del constructor(podemos usar cualquiera),debe ir en el constructor de la clase y antes que nada:


1
2
3
Perro () { 
   super();
}

Bien sabiendo eso,vamos a definir unas funciones:

Primero la función ladrar,muy propia de los perros:


1
2
3
public void ladrar() {
 System.out.println("Woww");
}

Ahora una función para saber si necesita dar un paseo:

Definimos una variable miembro:

private boolean pasear = true;


1
2
3
4
5
6
public void salirPasear() {
   if (this.pasear)
      System.out.println("Llevar a pasear");
   else 
      System.out.println("No hace falta salir a pasear");
}

Y el constructor,le pasamos dos String:

1
2
3
4
Perro (String e,String s) {
   super(e,s);
   // Aqui iniciamos mas funciones o variables si es necesario
}

Ahora nuestro main queda así:


1
2
3
4
5
6
7
class Ejemplo {
 public static void main(String[] args) {
  Perro perro1 = new Perro("Perro", "Macho");
  perro1.ladrar(); // Funcion de Perro
  perro1.tienesHambre(); // Funcion de animal
 }
}



Como vemos podemos usar funciones de Perro y de Animal,eso es todo.


No hay comentarios.:

Publicar un comentario

Los comentarios serán revisados antes de ser publicados.