Hola otra vez.
He solucionado la duda enviada en el otro mensaje de hace una hora(era porque no tenía las tres clases en el mismo proyecto). Ahora tengo otra parecida. No compila.
El mensaje es:
"Constructor taxi in class Taxi cannot be applied to given types; required: java.lang.String,java.lang.String,int.
The operator that you use here cannot be used for the type of value that you are using it for. You are either using the wrong type here, or the wrong operator."
"Constructor de taxi en la clase de taxi no se puede aplicar a tipos dados; requerido: java.lang.String, java.lang.String, int.
El operador que utilice aquí no se puede utilizar para el tipo de valor que está utilizando para. Estás ya sea utilizando el tipo equivocado aquí, o el operador equivocado."
Qué pueden decirme? el fallo lo da en "new Taxi" del constructor .
clase TaxiCond
public class TaxiCond{
//Atributo definidos en otras clases como objetos
private Taxi vehiculoTaxi; //Taxi es un tipo definido en otra clase, ahora es un tipo de dato referenciado.
private Persona conductorPersona; //Ocurre lo mismo que con el tipo Taxi.
//Constructor:
public TaxiCond(){
vehiculoTaxi = new Taxi(); //Creamos un objeto Taxi con el constructor general de Taxi.
conductorPersona = new Persona(); //Creamos un objeto Persona con el constructor general de Persona.
}
public void setMatricula(String valorMatricula){
vehiculoTaxi.setMatricula(valorMatricula);
}
//Método que devuelve información sobre el objeto TaxiCond.
public String getDatosTaxiCond(){
String matricula = vehiculoTaxi.getMatricul();
String distrito = vehiculoTaxi.getDistrito();
int tipoMotor = vehiculoTaxi.getTipoMotor();
String cadenaTipoMotor="";
if(tipoMotor == 0){cadenaTipoMotor = "Desconocido";}
else if(tipoMotor == 1){cadenaTipoMotor = "Gasolina";}
else if(tipoMotor == 2){cadenTipoMotor = "Diesel";}
String datosTaxiCond = "El objeto Taxi presenta estos datos: Matricula: " +matricula+ " Distrito: " +distrito+ " Tipo de motor: " +cadenaTipoMotor;
System.out.println(datosTaxiCond);
return datosTaxiCond;
}
}
clase Persona
public class Persona{
//Caracteristicas, atributos o campos de todos los objetos Persona creados en esta clase.
private String nombre;
private int edad;
//Constructor1,con parámetros, define el codigo que será ejecutado.
public Persona(String nombrePersona){
nombre = nombrePersona;
edad = 0;
}
//Constructor; sin parámetros, define el código que se ejecutará.
public Persona(){
nombre = "";
edad = 0;
}
//Método para obtener el nombre.
public String getNombre(){
return nombre;
}
}
clase Taxi
public class Taxi{
//Caracteristicas para cada objeto Taxi.
private String ciudad;
private String matricula; //Matrícula de cada objeto Taxi.
private String distrito;
private int tipoMotor;
//Constructor: Solo se ejecuta el código definido en el constructor.
public Taxi(String valorMatricula,String valorDistrito,int valorTipoMotor){
ciudad = "México D.F.";
matricula = valorMatricula;
distrito = valorDistrito;
tipoMotor = valorTipoMotor;
}
//Serie de métodos para obtener los valores de los métodos.
public String getMatricula(){
return matricula;
}
public String getDistrito(){
return distrito;
}
public int getTipoMotor(){
return tipoMotor;
}
}