Ver Mensaje Individual
  #3 (permalink)  
Antiguo 02/04/2012, 03:45
luis_vega
 
Fecha de Ingreso: marzo-2012
Ubicación: Madrid
Mensajes: 74
Antigüedad: 12 años, 2 meses
Puntos: 12
Respuesta: funcion de la estructura Pila

Primero has de tener claro el concepto de pila. Sucesion de objetos, a la cual se le añaden o extraen elementos solo por un extremo. De tal forma que es último introducido es el primero recuperable.

En tu caso estas definiendo una pila de números enteros.

Cada elemento de la pila se compone de un dato (numero entero) y una referencia al siguiente elemento pila.

------- ------- -------
|6|-->| |3|-->| |8| - |
------- ------- -------

Para eso sirve la variable miembro "sig", es la referencia al siguiente elemento de la pila, es la "flecha".

"this" es el "alias" o referencia al objeto que estas usando.
Ejemplo:
Creas la pila empezando por 8: llamas a new pila(8), asignas dato=0 y sig=null. Imagina que ese objeto es "elemento_8"

Añades el 3: Llamas a metodo "poner" de "elemento_8"; elemento_8.poner(3), crea un nuevo elemento pila, imagina este como "elemento_3"; asigna dato=3 y sig=elemento_8; ese es el "truco" this es elemento_8, el objeto al cual pertenece el metodo "poner" que se ha invocado.


Con el metodo "sacar", tienes razon parcialmente, se le ve raro. Pero esta correcto, el sentido de ese metodo es "suprimir" el primer elemento de la pila, y retornandote el resto de la pila.