Stack e Heap [Qual a diferença?]

4 respostas
R

Estou lendo o Head First, em inglês e agora no capítulo 9.Tem Stack e Heap, porém os dois seriam pilhas.Em português tem outro nome?

4 Respostas

T

A rigor, um Heap é um “monte” (algo desordenado - não desorganizado), enquanto um Stack é algo “ordenado” (empilhado).

Qual é o nome certo que se usa na literatura em português, é isso que você quer saber, não?

R

É que eu estava lendo o Livro do Deitel só que em Português, dai teve uma parte que falou de estrutura de dados (pilha,fila, …)Por acaso seria a mesma coisa?

O nome em portugues mesmo já sabia, mas fica meio estranho.

T

O “stack” que o processador (e a JVM) usa é uma estrutura de dados que é exatamente uma pilha.

Andre_Brito

Funciona da mesma forma.
A Heap é a memória onde ficam os objetos (não importa a ordem).
A Stack é uma pilha que, por exemplo, quando você executa um método, ele é empilhado. Aí, supondo que você execute outro método dentro deste, o mesmo é empilhado (e assim por diante). No final da execução do método (quando chega no ‘}’), desempilha e o método no qual você está agora é o último da pilha.
O HF mostra nesse sentido. Eu acho que a Heap não é uma estrutura de dados ordenada porque é tudo jogado (não existe sentido entre os objetos dentro da Heap, o que acontece na Pilha).

Criado 9 de maio de 2008
Ultima resposta 9 de mai. de 2008
Respostas 4
Participantes 3