La herencia vista para aprobar.

 La herencia vista para aprobar.

Vamos a hacer una sencilla pero completa herencia entre una bicicleta, una motocicleta, y veremos como funciona con un taller de reparación.

La bicicleta está formada por dos atributos/objetos: Rueda delantera, Rueda trasera, para ello, previamente creamos la clase Rueda:

public class Rueda{

String situacion;

public Rueda(String situacion){

this.situacion = situacion;

}

public String toString(){

return ""+"Soy una rueda situada en la parte "+situacion;

}

public static void main(String[] arg){

String situacion = "delantera"; 

Rueda ruedaD = new Rueda(situacion);

situacion = "trasera";

Rueda ruedaT = new Rueda(situacion);

System.out.println(ruedaD.toString());

System.out.println(ruedaT.toString());

}

}

Con la clase Rueda podemos fabricar todas las ruedas que queramos.

Ahora, la clase para fabricar bicicletas: (como atributos/objetos simplemente dos ruedas:)


public class Bicicleta{

Rueda delantera;

Rueda trasera;

public Bicicleta(Rueda delantera, Rueda trasera){

this.delantera = delantera;

this.trasera = trasera;

}

public String toString(){

return "Soy una bicicleta con dos ruedas, una "+delantera+" y otra "+trasera;

}

public static void main(String[] arg){

Rueda ruedaD = new Rueda("delantera"); Rueda ruedaT= new Rueda("trasera");

Bicicleta orbea = new Bicicleta (ruedaD,ruedaT);

Bicicleta rockrider = new Bicicleta(ruedaD,ruedaT); //las dos tienen dos ruedas.

System.out.println(""+orbea);

System.out.println(""+rockrider);

}

}


Ahora, teniedo en cuenta la clase Bicicleta como base, creamos una bicicleta con motor: Primero el motor:

public class Motor {
String sinMarca;

public Motor(String sinMarca){
this.sinMarca = sinMarca;
}
public static void main(String[]arg){
Motor ducati = new Motor(this.sinMarca);

}






Comentarios

Entradas populares de este blog

13 Tipo primitivo Char.

11.- Variable constante

27.- Tipos complejos o referencia: Métodos