Junior — Middle
¿En qué se diferencian los campos de una clase y las variables locales dentro de los métodos en Java?
sobes.tech AI
Respuesta de la IA
Los campos de clase (variables de instancia o campos estáticos) y las variables locales dentro de los métodos en Java difieren en alcance, tiempo de vida y lugar de almacenamiento:
-
Campos de clase:
- Se declaran dentro de la clase, pero fuera de los métodos.
- Se almacenan en el objeto (si no son estáticos) o en el área de la clase (si son estáticos).
- Mantienen su valor entre llamadas a métodos.
- Son accesibles desde diferentes métodos de la clase (según el nivel de acceso).
-
Variables locales:
- Se declaran dentro de un método.
- Solo existen durante la ejecución del método.
- Se almacenan en la pila de llamadas.
- No son accesibles fuera del método en el que se declaran.
Ejemplo:
public class Example {
int field = 10; // campo de clase
public void method() {
int localVar = 5; // variable local
System.out.println(field + localVar);
}
}
Aquí, field mantiene el estado del objeto, mientras que localVar solo existe durante la ejecución del método method.