Pilha

Bem estou com algumas dúvidas sobre pilha:
peguei uma classe com exemplo e coloquei meus conceitos se eu estiver
erro por favor me corrijam

public class Pilha 
{
	
	public int vet[] = new int[100]; // vetor para armazenar os elementos da pilha
	public int topo=0; // indica a posição do topo
	
	public boolean cheia()
	{
		return(topo == vet.length);// se topo for do tamanho do vetor retorna true caso contrario retorna false
		
	}
	
	public boolean vazia()
	{
		return(topo == 0);//se o topo não tive recebido nenhum elemento que dizer que a pilha está vazia e retorna true
		//caso contrario retorna false
	}
	
	public void empilhar(int x)
	{
		vet[topo] = x;//esse vai ser o elemento a ser empilhado começando a partir do posição 0 do vetor
		topo++;//vai incrementando cada posição ao um novo objeto
	}
	
	public int desempilhar()
	{
		topo--;
		return(vet[topo]);//esse retira o objeto desempilhar a lista
	}
}

se vc nao fizer nenhum tratamento, nem da nesse caso pq vc esta usando um vetor de ints, a posição [5], continua com o valor la, so q este nao pode mais ser acessado porque o indice topo, ja foi movimentado

Voce não perde nenhuma informação se estiver trabalhando com arranjo, se vc empilhou 1,2,3,4,5, quando desempilhar desempilhará 5,4,3,2,1, sem problemas.