elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


  Mostrar Mensajes
Páginas: [1]
1  Programación / Java / Re: Duda ejercicio java variable static en: 11 Noviembre 2014, 18:09 pm
Por eso no es buena idea poner los mismos nombres a los atributos que a las variables.
Ya ves, lo han puesto así para pillar jeje  :laugh:

Ahora sí está entendido, gracias mil!!
2  Programación / Java / Re: Duda ejercicio java variable static en: 11 Noviembre 2014, 00:15 am
Pero cuando haces System.out.println(x); estás haciendo referencia a tu atributo estático que vale 5.
Entendido, ¿y por qué no hace lo mismo el código de arriba?

En el primer código, no sé si es que imprime la x del método, o imprime la static que ha cambiado de valor (y si fuera así no entiendo porqué en el primero cambia de valor y en el segundo hay "otra" x independiente), según leí las variables estáticas solo pueden tener un valor, no es como las otras que se pasa una copia a cada método... Pero qué distinto es estudiar la teoría y luego ver la práctica... Muchísimas gracias por vuestro tiempo y respuestas :)

3  Programación / Java / Duda ejercicio java variable static en: 10 Noviembre 2014, 22:56 pm
Hola, me he encontrado este ejercicio que no entiendo, en el libro vienen las soluciones pero no la explicación, y como estoy aprendiendo por mi cuenta no tengo quien me lo explique:

Código:
class Prueba {
static int x = 5
public static int f() {
     x = 0
     return x;
}
public static void main (String [] args {
  System.out.println("Resultado = " + f() + "," + (++x));
}
}

Resultado = 0,1


Código:
class Prueba {
static int x = 5
public static int f (int x) {
     x = 0
     return x;
}
public static void main (String [] args {
  System.out.println("Resultado = " + f(x) + "," + ++x);
}
}

Y aquí imprime:
Resultado = 0, 6


Veo que en el segundo la función f toma x como parámetro, pero no entiendo porqué eso hace que x vuelva a valer 5 si el último valor que se le había dado era 0. ¿Alguien me lo podría explicar?

De antemano muchas gracias y saludos!!
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines