Ejercicio Vehículo


public class Vehiculo {
	private int velocidad;
	private int direccion;
	protected int velocidadMaxima;
	protected int velocidadIncremento;
	protected int direccionIncremento;
	public Vehiculo() {
		// Me está diciendo como se comporta mi clase
		velocidadMaxima=200;
		velocidadIncremento=10;
		direccionIncremento=10;
	}
	public void acelerar() {
		velocidad+=velocidadIncremento;
		if (velocidad>velocidadMaxima) {
			velocidad=velocidadMaxima;
		}
	}
	public void frenar() {
		velocidad-=velocidadIncremento;
		if (velocidad<0) {
			velocidad=0;
		}
	}
	
	public void izquierda() {
		direccion+=direccionIncremento;
		if (direccion>=360) {
			direccion-=360;
		}
	}
	public void derecha() {
		direccion-=direccionIncremento;
		if (direccion<0) {
			direccion+=360;
		}
	}
	@Override
	public String toString() {
		return "Vehiculo [velocidad=" + velocidad + ", direccion=" + direccion + "]";
	}
	
	
	
}


public class Coche extends Vehiculo {
	public Coche() {
		velocidadMaxima=150;
	}
}


public class Bicicleta extends Vehiculo {

	public Bicicleta() {
		velocidadIncremento=3;
	}
}


public class Tanque extends Vehiculo {
	public Tanque() {
		direccionIncremento=90;
	}
}

Vehiculo v=new Vehiculo();
		v.acelerar();
		v.acelerar();
		v.derecha();
		v.derecha();
		System.out.println(v);
		for(int i=0;i<50;i++) {
			v.acelerar();
			v.derecha();
			System.out.println(v);
		}
		
		Coche c= new Coche();
		for(int i=0;i<50;i++) {
			c.acelerar();
			
			System.out.println(c);
		}
		
		Bicicleta b= new Bicicleta();
		for(int i=0;i<50;i++) {
			b.acelerar();
			
			System.out.println(b);
		}
		
		Tanque t=new Tanque();
		for(int i=0;i<5;i++) {
			t.derecha();
			
			System.out.println(t);
		}

Publicado por

Juan Pablo Fuentes

Formador de programación y bases de datos