Foros aprenderaprogramar.com
		Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: Aprendiz1 en 04 de Octubre 2016, 17:24
		
			
			- 
				Buenas,
 En la Entrega nº42 del curso "Aprender programación Java desde cero".
 Codificación aprenderaprogramar.com: CU00642B PASO DE OBJETOS COMO PARÁMETROS A UN MÉTODO O CONSTRUCTOR EN JAVA
 
 En el ejemplo sugerido:
 
 /**
 * Write a description of class TaxiCond here.
 *
 * @author (Ricardo Sardinha)
 */
 public class TaxiCond
 {
 // instance variables - replace the example below with your own
 private Taxi vehiculoTaxi;
 private Persona conductorTaxi;
 
 /**
 * Constructor for objects of class TaxiCond
 */
 public TaxiCond(Taxi objetoTaxi, Persona objetoPersona)
 {
 // Creamos un objeto Taxi con los mismos datos del Taxi recibidos como parametro
 vehiculoTaxi = new Taxi (objetoTaxi.getMatricula(), objetoTaxi.getDistrito(), objetoTaxi.getTipoMotor());
 // Creamos un objeto Persona con los mismos datos de la Persona recibidos como parametro
 conductorTaxi = new Persona (objetoPersona.getNombre());
 }
 
 public void setMatricula (String valorMatricula)
 {
 vehiculoTaxi.setMatricula(valorMatricula);
 }
 
 /**
 * Devuelve información sobre el objeto TaxiCond
 */
 public String getDatosTaxiCond ()
 {
 String matricula = vehiculoTaxi.getMatricula();
 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) {cadenaTipoMotor = "Diesel";}
 
 String datosTaxiCond = "El objeto TaxiCond presenta estos datos. Matricula: " +
 matricula + " Distrito: " + distrito + " Tipo de motor: " + cadenaTipoMotor;
 
 System.out.println (datosTaxiCond);
 return datosTaxiCond;
 }
 }
 
 Al tratar de compilar el código de la Clase TaxiCond,
 me arroja un error:
 conductorTaxi = new Persona (objetoPersona.getNombre());
 
 constructor Persona in class Persona cannot be applied to given types;
 required: no arguments; found:java.lang.String; reason:actual and format argument lists differ in lenght
 
 Agradezco sus comentarios,
 Ricardo S.
- 
				Hola Aprendiz1.
 
 Viendo que es tu primer mensaje en el foro, te recomiendo leer este apartado...
 https://www.aprenderaprogramar.com/foros/index.php?topic=1460.msg7784#msg7784
 
 Y por otro lado si puedes evitar de uso de color amarillo para la letra, mis ojos te lo agradecerán. ::)
 
 En cuanto al error que obtienes es porque el constructor que tienes declarado en la clase Persona no recibe ningún argumento y tu le estás mandando uno. El constructor que viene la clase Persona de los ejemplo es este:
 
     public Persona () {
 nombre = "";
 apellido = "";
 edad = 23;
 casado = true;
 numeroDocumentoIdentidad = "";
 }
 Para que tu invocación funcionase necesitarías un constructor como este:
 
     public Persona (String valorNombre) {
 nombre =valorNombre;
 apellido = "";
 edad = 23;
 casado = true;
 numeroDocumentoIdentidad = "";
 }
 De todas formas si tienes dudas, pega el código de todas las clases que estés usando y será más fácil ayudarte.
 
 Saludos. ;D
- 
				Muchas Gracias por la aclaración :)