Intern
Qual é a diferença entre um campo e uma variável em Java?
sobes.tech IA
Resposta da IA
Um campo é uma variável declarada dentro de uma classe, mas fora de qualquer método. Os campos definem as propriedades do objeto da classe.
Uma variável é qualquer local na memória reservado para armazenar dados de um tipo específico. As variáveis podem ser:
- Campos (field): declarados ao nível da classe.
- Variáveis locais (local variable): declaradas dentro de um método, construtor ou bloco.
- Parâmetros de métodos (method parameter): declarados na assinatura do método.
A principal diferença: escopo e tempo de vida. Os campos pertencem ao objeto (para os não estáticos) ou à classe (para os estáticos) e existem durante todo o ciclo de vida. Variáveis locais e parâmetros de métodos existem apenas dentro do bloco em que são declarados, e são destruídos após sair dele.
Exemplo:
class Example {
int instanceField; // Campo de instância
static String staticField; // Campo estático
void myMethod(int parameter) { // parameter - parâmetro do método
int localVar = 10; // localVar - variável local
this.instanceField = parameter;
System.out.println(staticField + " " + localVar);
}
}