Junior — Middle
Consegues nomear os diferentes tipos de memória utilizados em Java e as suas características?
sobes.tech IA
Resposta da IA
Em Java, são utilizados vários tipos de memória que gerenciam o ciclo de vida dos objetos e dados:
-
Heap (montão) — o principal local para alojar objetos e arrays. É gerido pelo coletor de lixo. Os objetos permanecem aqui enquanto houver referências a eles.
-
Stack (pilha) — armazena variáveis locais e chamadas de métodos para cada thread. Cada thread tem sua própria pilha.
-
Method Area (área de métodos) — armazena informações sobre classes, variáveis estáticas, constantes e bytecode de métodos.
-
PC Register (contador de programa) — armazena o endereço da instrução atualmente em execução para cada thread.
-
Native Method Stack — usado para chamar métodos nativos (não em Java).
Características:
- O heap é compartilhado entre todas as threads.
- A pilha é isolada para cada thread, garantindo a segurança das variáveis locais.
- O coletor de lixo trabalha no montão, liberando automaticamente a memória não utilizada.