[ Foro de Java ]
Hola, estoy haciendo un curso de java, y al copiar el código me sale el resultado diferente, en el video lo que muestra en consola es el valor de la propiedad. Pero a mi me sale valor 0 cuando he puesto un valor diferente. No sé si me he explicado bien. Les dejo el código así lo pueden leer agradezco sus respuestas.
package prueba;
public class Casa {
int ventana;
int puertas;
int porton;
public Casa () {
int ventana = 4;
int puertas = 2;
int porton = 1;
}}
(en otra clase puse lo siguiente con el método constructor)
package prueba;
public class carac_Casa {
public static void main(String[] args) {
Casa caract = new Casa ();
System.out.println( "La casa tiene: " + caract.ventana + "ventanas");
System.out.println( "La casa tiene: " + caract.porton + "portones");
}}
EL RESULTADO ME DA 0.
Cuando lo correcto seria que ventana y portón me debería devolver un 4 y 1 respectivamente.
El fallo está en tu constructor: no deberías hacer
int porton = 1;
sino
porton = 1;
porque de lo contrario, creas una variable local, en vez de da un valor al atributo.
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)