Código
public class Practica5c {
public class Practica5c {
public static void main (String args[]){
Coche coche1 = new Coche("Toyota", "Camry");
Coche coche2 = new Coche("Honda", "Accord");
Garaje garaje = new Garaje();
garaje.aceptarCoche(coche1, "goma pichada");
garaje.devolverCoche();
garaje.aceptarCoche(coche2, "aceite");
garaje.devolverCoche();
System.out.println("El coche 1 es: "+ coche1.getMarca() +" "+ coche1.getModelo() +"\n La averia es "+ garaje.getAveria() +"\n El precio en averias es "+ coche1.getImporteAveria());
System.out.println("El coche 2 es: "+ coche2.getMarca() +" "+ coche2.getModelo() +"\n La averia es "+ garaje.getAveria() +"\n El precio en averias es "+ coche2.getImporteAveria());
}
}
}
Pero cuando se imprime la avería y el precio en averías son iguales.
La clase Garaje es esta:
Código
public class Garaje{
//atributos
private Coche coche;
private String averia;
private int nCochesAtendidos;
private boolean cocheAdentro;
//constructor PUEDE QUE NO VAYA
public Garaje(){
}
//metodo Aceptar Coche
public boolean aceptarCoche(Coche param1, String dano){
averia = dano;
nCochesAtendidos += 1;
if(cocheAdentro == true){
System.out.println("Ya hay un coche en el garage");
return false;
}
else{
cocheAdentro = true;
if(averia == "aceite"){
Motor motor = new Motor(10);
Motor.setLtAceite(10);
Coche.acumularAveria(Math.random()*1000);
}
return true;
}
}
//metodo obtener averia
public String getAveria(){
return averia;
}
//metodo devolverCoche
public void devolverCoche(){
cocheAdentro = false;
}
}
Tal vez haya hecho mucho disparates porque todavía no entiendo bien la orientación a objetos, pero ahora mismo lo que más me interesa es saber como puedo hacer que se imprima la correspondiente avería para cada uno de los carros y lo mismo con el precio de averias. Creo que si puediera imprimir el parámetro del método aceptarCoche lo podría hacer para la avería.
Es una versión simplificada de esta práctica










Autor



En línea



