La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Mostrare l'evoluzione dello stato (ambiente di classi, heap, pila, System.out) dopo ciascuna istruzione del main: public class Up extends Object { public.

Presentazioni simili


Presentazione sul tema: "Mostrare l'evoluzione dello stato (ambiente di classi, heap, pila, System.out) dopo ciascuna istruzione del main: public class Up extends Object { public."— Transcript della presentazione:

1 Mostrare l'evoluzione dello stato (ambiente di classi, heap, pila, System.out) dopo ciascuna istruzione del main: public class Up extends Object { public static int w; public int x; public void met1() {x=x+w; w=w+1;} {x=w;} } public class Down extends Up { public Up y; public void met1() {y=new Down(); y.met2(x+3);} public void met2(int i) {x=y.x+1; w=i;} {y=new Up();} } public class Princ extends Object { public static void main() { Up.w = 5; Up p1 = new Down(); p1.y.met1(); p1.met1(); } }

2 Ambiente delle classi 0 Object Up Down Princ non static staticClasse ereditataNome classe Object Up Object main--- 1 2 1 3 2 w0x0 Up Descr Up met1 Descr met1 x0 y DownDescr Down met2Descr met1 met1Descr' met1

3 Descr met1 = Descr Up = Descr' met1 = Descr met2 = Descr Down = Ambiente delle classi 0

4 Stato iniziale: : Ambiente delle classi : Heap vuota : Contiene il record di attivazione di main Princ Pila dei Frames vuota!

5 Prima Istruzione del main: Up.w = 5; com Modifica solo l'ambiente delle classi. Frame delle variabili statiche di UP: 1 w0 1 ' w5

6 Seconda Istruzione del main: Up p1 = new Down(); com l1l1 Princ l1l1 p1p1 ' Down x5 yl2l2 l2l2 ' Up x5

7 Terza Istruzione del main: p1.y.met1(); com Modifica l'ambiente delle classi e l'heap. ' (met1) = 1 ' w5 1 '' w6 l1l1 ' Down x5 yl2l2 l2l2 ' Up x10 2

8 Quarta Istruzione del main: p1.met1(); com ' (met1) = ' l1l1 ' Down x5 yl3l3 /// l2l2 l3l3 '' Down x6 yl4l4 l4l4 '' Up x6 y=new Down(); Dopo l'esecuzione di:

9 Quarta Istruzione del main: p1.met1(); com ' (met1) = l1l1 ' Down x5 yl3l3 /// l2l2 l3l3 '' Down x7 yl4l4 l4l4 '' Up x6 y.met2(x+3); Dopo l'esecuzione di: In l 1 x=5 x+3=8 '' (met2) = 1 '' w6 1 ''' w8 3


Scaricare ppt "Mostrare l'evoluzione dello stato (ambiente di classi, heap, pila, System.out) dopo ciascuna istruzione del main: public class Up extends Object { public."

Presentazioni simili


Annunci Google