Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: Chompy129 en 12 de Diciembre 2016, 21:19
-
Pasar objetos como parámetros a un método o constructor Java. Diferenciar objeto y tipo primitivo (CU00642B)
Aquí les dejo el ejercicio:
Códigos Java
-Clase "Casa"
/**
* Define a una casa respecto a su contenido (habitaciones).
* @author Chompy129
* @version 1.1
*/
public class Casa{
private double superficie;
private String direccion;
private SalonCasa salonCasa;
private CocinaCasa cocina;
public Casa(){
superficie= 0;
direccion= "desconocido";
salonCasa= new SalonCasa();
cocina= new CocinaCasa();
}
public Casa(double valueSuperficie, String valueDireccion, SalonCasa objetoSalonCasa, CocinaCasa objetoCocinaCasa){
superficie= valueSuperficie;
direccion= valueDireccion;
salonCasa= objetoSalonCasa;
cocina= objetoCocinaCasa;
}
}
-Clase "SalonCasa"
/**
* Define el salon de una casa respecto a su contenido.
* @author Chompy129
* @version 1.0
*/
public class SalonCasa{
private int numeroDeTelevisores;
private String tipoSalon;
public SalonCasa(){
numeroDeTelevisores= 0;
tipoSalon= "desconocido";
}
}
-Clase "CocinaCasa"
/**
* Define la cocina de una casa respecto a su contenido.
* @author Chompy129
* @version 1.0
*/
public class CocinaCasa{
private boolean esIndependiente;
private int numeroDeFuegos;
public CocinaCasa(){
esIndependiente= false;
numeroDeFuegos= 0;
}
}
Link de la clase: https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=517:pasar-objetos-como-parametros-a-un-metodo-o-constructor-java-diferenciar-objeto-y-tipo-primitivo-cu00642b&catid=68:curso-aprender-programacion-java-desde-cero&Itemid=188 (https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=517:pasar-objetos-como-parametros-a-un-metodo-o-constructor-java-diferenciar-objeto-y-tipo-primitivo-cu00642b&catid=68:curso-aprender-programacion-java-desde-cero&Itemid=188)
-
Si, se cumple el objetivo de pasar objetos como parámetros al constructor en este caso... Todo bien, todo ordenado.
-
Gracias por revisar el ejercicio Shakar. ;D
-
Buenos días.
Para que el código fuera completo te faltarían los métodos getter y setter.
En el siguiente enlace puedes ver como hizo este ejercicio otro compañero:
http://[code]https://www.aprenderaprogramar.com/foros/index.php?topic=4761.msg19382#msg19382[/code]
Un saludo
-
Hola ESOJ tu link no funcion parece que pusiste dentro "code" y tiene que ser dentro de "url" o mas bien pusiste un code dentro de url podes revisar.
-
https://www.aprenderaprogramar.com/foros/index.php?topic=4761.msg19382#msg19382
Este es link del ejercicio.
-
Hola Chompy129, lo que te ha indicado ESOJ, en particular en este ejercicio, es muy importante (incluir los getter y setter). Te recomiendo que lo rehagas incluyendo estos métodos.
Saludos.
-
Aunque el ejercicio es relativamente viejo, lo corregiré de todas formas. :P
Códigos Java
-Clase "Casa"
/**
* Define a una casa respecto a su contenido (habitaciones).
* @author Chompy129
* @version 1.0
*/
public class Casa{
private double superficie;
private String direccion;
private SalonCasa salonCasa;
private CocinaCasa cocina;
public Casa(){
superficie= 0;
direccion= "desconocido";
salonCasa= new SalonCasa();
cocina= new CocinaCasa();
}
public Casa(double valueSuperficie, String valueDireccion, SalonCasa objetoSalonCasa, CocinaCasa objetoCocinaCasa){
superficie= valueSuperficie;
direccion= valueDireccion;
salonCasa= objetoSalonCasa;
cocina= objetoCocinaCasa;
}
//Métodos set
public void setSuperficie(double valueSuperficie){
superficie= valueSuperficie;
}
public void setDireccion(String valueDireccion){
direccion= valueDireccion;
}
public void setSalonCasa(SalonCasa valueSalonCasa){
salonCasa= valueSalonCasa;
}
public void setCocina(CocinaCasa valueCocina){
cocina= valueCocina;
}
//Métodos get
public double getSuperficie(){return superficie;}
public String getDireccion(){return direccion;}
public SalonCasa getSalonCasa(){return salonCasa;}
public CocinaCasa getCocina(){return cocina;}
}
-Clase "SalonCasa"
/**
* Define el salon de una casa respecto a su contenido.
* @author Chompy129
* @version 1.0
*/
public class SalonCasa{
private int numeroDeTelevisores;
private String tipoSalon;
public SalonCasa(){
numeroDeTelevisores= 0;
tipoSalon= "desconocido";
}
//Métodos set
public void setNumeroDeTelevisores(int valueNumeroDeTelevisores){
numeroDeTelevisores= valueNumeroDeTelevisores;
}
public void setTipoSalon(String valueTipoSalon){
tipoSalon= valueTipoSalon;
}
//Métodos get
public int getNumeroDeTelevisores(){return numeroDeTelevisores;}
public String getTipoSalon(){return tipoSalon;}
}
-Clase "CocinaCasa"
/**
* Define la cocina de una casa respecto a su contenido.
* @author Chompy129
* @version 1.0
*/
public class CocinaCasa{
private boolean esIndependiente;
private int numeroDeFuegos;
public CocinaCasa(){
esIndependiente= false;
numeroDeFuegos= 0;
}
//Métodos set
public void setEsIndependiente(boolean valueEsIndependiente){
esIndependiente= valueEsIndependiente;
}
public void setNumeroDeFuegos(int valueNumeroDeFuegos){
numeroDeFuegos= valueNumeroDeFuegos;
}
//Métodos get
public boolean getEsIndependiente(){return esIndependiente;}
public int getNumeroDeFuegos(){return numeroDeFuegos;}
}
LISTO!
Ejercicio mejorado. ;D
-
Hola, fíjate en el constructor que has planteado tú y en cómo está planteado aquí: https://www.aprenderaprogramar.com/foros/index.php?topic=1238.0
Es importante comprender la diferencia entre ambas formas aunque para comprender esto realmente habrá que esperar a la parte del curso donde se habla de identidad entre objetos e igualdad entre objetos. En este punto puede ser suficiente con saber que se puede hacer de distintas maneras.
Saludos