Dúvida em Pilha e Heap

4 respostas
peresjuliao

Olá Javaneses?!

Estou estudando em um livro de Java sobre pilha e heap, acontece que esta parte é muito teória e não estou conseguindo absorver o que o autor está realmente querendo passar.

Até agora o que eu entendi foi que na pilha fica armazenado os métodos e as váriaveis e no heap os objetos.

E as váriavéis de instância onde ficam?

Alguem pode me explicar melhor no português claro?

Se alguém tiver alguma video aula, material que aborda este assunto a fundo desde já agradeceria a colaboração.

Abraços

4 Respostas

Djonatah

Amigo,

As variáveis de intstância (assim como o próprio objeto) são armazenados na heap,.

Abraços
<><

rubinelli

A idéia é a seguinte: na pilha, ficam as variáveis que o método está manipulando no momento. Quando você chama um método, a VM coloca na pilha os argumentos desse método. Tipos primitivos são passados por valor, portanto vão direto para a pilha. Objetos são passados por referência, então é a referência que é empilhada. O que está na pilha não passa por garbage collection. Simplesmente, quando o método retorna, a pilha encolhe, e o valor daquelas variáveis se perde.

Quando você cria um objeto, a VM aloca um pedaço de memória para ele na heap. Esse pedaço de memória vai armazenar tipos primitivos e referências, que nada mais são que as variáveis de instância daquele objeto.

adriano_si

Cara, eu poderia perder um tempão te explicando isso aqui e não conseguir passar o conhecimento, porque realmente é uma idéia bem chatinha pela sequencia de fatos que ocorrem… eu te indico o Use a Cabeça! Java da Katty… cara, lá tem uma explicação infalível, com deseninho e tudo mais do que ocorre na sequencia… se não puder comprar, vê se consegue emprestar… Falows :wink:

Robsonvnt

essa parte de pilha, fila, lista etc.
faz parte da estrutura de dados
é uma coisa bem teórica, independente de linguagem
não sei o que vc quer
se quer estudar java recomendo que mude um pouco
livros de estrutura de dados não vão te ensinar java
vão te ensinar varias estruturas como arvore binária, arvore avl,
lista etc.
espero ter ajudado
abraço!

Criado 28 de dezembro de 2008
Ultima resposta 29 de dez. de 2008
Respostas 4
Participantes 5