You are on page 1of 2

Simulazione 3

import javax.swing.*; class Quadrato { //Sottoprogramma che calcola l'area public static double calcolaArea(double l) { return Math.pow(l,2); } //Programma principale public static void main(String[] args) { //Dichiarazione di variabili double lato, area; //Acquisizione input lato = Double.parseDouble(JoptionPane.showInputDialog (Immettere la misura del lato)); //Calcolo area area = calcolaArea(lato); //Output JoptionPane.showMessageDialog(null,Area = +area); } }

Istruzione 1

Istruzione 2

Istruzione 3 Istruzione 4

Supponiamo che il lato del quadrato sia pari a 2; in output dovremo ottenere 4. Prima dellesecuzione della prima istruzione del main, in memoria avremo una situazione simile alla seguente: Ambiente della classe Ambiente del metodo Quadrato main nessuna variabile allocata lato area Lesecuzione inizia dallistruzione 2. Esecuzione dellistruzione 2 Lutente inserisce la misura del lato e questa viene salvata in memoria nella variabile lato. Ambiente della classe Ambiente del metodo Quadrato main nessuna variabile allocata lato 2 area Ambiente del metodo calcolaArea nessuna variabile allocata Ambiente del metodo calcolaArea nessuna variabile allocata

Autore: Cinzia Bocchi Ultimo aggiornamento: 19/09/11

Esecuzione dellistruzione 3 Viene chiamato il metodo calcolaArea e il controllo passa al chiamato. Per prima cosa viene allocato il parametro formale l e, successivamente, in esso viene copiato il valore del parametro attuale lato. Ambiente della classe Ambiente del metodo Quadrato main nessuna variabile allocata lato 2 area Ambiente del metodo calcolaArea l 2

Viene poi eseguita la prima istruzione del metodo, cio listruzione 1. Esecuzione dellistruzione 1 Viene calcolato il quadrato di l, ottenendo come risultato 4. Il valore risultante viene poi restituito al chiamante mediante listruzione return. Ambiente della classe Ambiente del metodo Quadrato main nessuna variabile allocata lato 2 area Il metodo termina, la variabile l viene deallocata Ambiente della classe Ambiente del metodo Quadrato main nessuna variabile allocata lato 2 area 4 Ambiente del metodo calcolaArea nessuna variabile allocata Ambiente del metodo calcolaArea l 2

e il controllo ritorna al chiamante, al punto in cui ci si trovava al momento della chiamata a calcolaArea (istruzione 3). Lesecuzione dellistruzione 3 non ancora completata poich necessario assegnare il valore restituito dal metodo calcolaArea alla variabile area. Esecuzione dellistruzione 4 Il valore dellarea viene restituito in output allutente e il metodo main termina. Tutte le risorse allocate vengono rilasciate.

Quest'opera stata rilasciata con licenza Creative Commons Attribution-ShareAlike 3.0 Unported. Per leggere una copia della licenza visita il sito web http://creativecommons.org/licenses/by-sa/3.0/ o spedisci una lettera a Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.
Autore: Cinzia Bocchi Ultimo aggiornamento: 19/09/11

You might also like