Fondamenti di informatica
Oggetti e Java
Luca Cabibbo
Variabili e assegnazione
Capitolo 9
dicembre 2003
1
Variabili e assegnazione
Luca Cabibbo – Fondamenti di informatica: Oggetti e Java
Copyright © 2004 – The McGraw-Hill Companies srl
Variabili e assegnazione
Una variabile è un contenitore con un nome, che
 consente di memorizzare un valore
 è specializzata nel tipo del valore che è in grado di
memorizzare
 consente l’accesso al valore memorizzato
numero
12.0
double
r
robbie : Robot
Robot
2
Variabili e assegnazione
Luca Cabibbo – Fondamenti di informatica: Oggetti e Java
Copyright © 2004 – The McGraw-Hill Companies srl
Assegnazione
numero
double
Per memorizzare un valore in una variabile deve essere usata
assegnazione
numero = 1.44;
numero
1.44
double
3
Variabili e assegnazione
Luca Cabibbo – Fondamenti di informatica: Oggetti e Java
Copyright © 2004 – The McGraw-Hill Companies srl
Accesso al valore di una variabile
Il valore di una variabile può essere acceduto scrivendo il nome
della variabile in un posto diverso dalla sinistra dell’operatore di
assegnazione
numero
1.44
double
System.out.println(numero);
4
Variabili e assegnazione
Luca Cabibbo – Fondamenti di informatica: Oggetti e Java
Copyright © 2004 – The McGraw-Hill Companies srl
Variabili e aree di memoria
Una variabile è una astrazione per una “area di memoria”
 per area di memoria si intende un gruppo di celle di memoria
 variabile
 un’area di memoria viene identificata dall’indirizzo dell’area di
memoria
 nome della variabile
 un’area di memoria ha lo scopo di memorizzare un valore,
opportunamente codificato mediante una sequenza di bit
 valore della variabile
 il valore memorizzato da un’area di memoria può essere interpretato
solo conoscendo il tipo della codifica utilizzata per l’area di memoria
 tipo della variabile
 una unità di memoria fornisce le operazioni di lettura e scrittura
 accesso e assegnazione
5
Variabili e assegnazione
Luca Cabibbo – Fondamenti di informatica: Oggetti e Java
Copyright © 2004 – The McGraw-Hill Companies srl
Dichiarazione di variabili
Una dichiarazione di variabile consiste di
 nome della variabile
 tipo della variabile
double numero;
double a, b, c;
// numero di cui si vuole calcolare
// la radice quadrata
// coefficienti di una equazione
// di secondo grado
Le variabili dichiarate nell’ambito di un metodo si chiamano
variabili locali del metodo
6
Variabili e assegnazione
Luca Cabibbo – Fondamenti di informatica: Oggetti e Java
Copyright © 2004 – The McGraw-Hill Companies srl
Assegnazione e accesso
double numero;
numero
double
Per memorizzare un valore in una variabile deve essere usata
una istruzione di assegnazione
numero = 1.44;
numero
1.44
double
7
Variabili e assegnazione
Luca Cabibbo – Fondamenti di informatica: Oggetti e Java
Copyright © 2004 – The McGraw-Hill Companies srl
Sintassi e vincoli per l’assegnazione
assegnazione
numero
identificatore-variabile


8
istruzione-assegnazione
=
1.44
;
espressione
la variabile di nome identificatore-variabile deve essere stata
dichiarata da una istruzione precedente nel metodo
il tipo di espressione deve essere “consistente” con il tipo
specificato della variabile di nome identificatore-variabile
Variabili e assegnazione
Luca Cabibbo – Fondamenti di informatica: Oggetti e Java
Copyright © 2004 – The McGraw-Hill Companies srl
Semantica dell’assegnazione
numero
double
numero = 1.44;
Effetto di una assegnazione
 calcola il valore v dell’espressione espressione
 memorizza il valore v calcolato nella variabile identificatorevariabile
numero
1.44
double
9
Variabili e assegnazione
Luca Cabibbo – Fondamenti di informatica: Oggetti e Java
Copyright © 2004 – The McGraw-Hill Companies srl
Accesso a variabili
double numero;
numero = 1.44;
numero
1.44
double
Dopo che è stato memorizzato un valore in una variabile, è
possibile accedere al valore associato alla variabile
System.out.println(numero);
10
Variabili e assegnazione
Luca Cabibbo – Fondamenti di informatica: Oggetti e Java
Copyright © 2004 – The McGraw-Hill Companies srl
Costanti
Una variabile può essere utilizzata per memorizzare un valore
costante
 dichiarazione preceduta dalla parola chiave final
 dichiarazione con inizializzazione
final double RAGGIO_CERCHIO = 10.0;

11
non è possibile modificare il valore di una costante
Variabili e assegnazione
Luca Cabibbo – Fondamenti di informatica: Oggetti e Java
Copyright © 2004 – The McGraw-Hill Companies srl
Variabili riferimento
Una variabile riferimento è una variabile il cui tipo è un tipo
riferimento (il nome di una classe)
 una variabile riferimento di un tipo C è in grado di
memorizzare un riferimento a un oggetto istanza di C
r
robbie : Robot
Robot
12
Variabili e assegnazione
Luca Cabibbo – Fondamenti di informatica: Oggetti e Java
Copyright © 2004 – The McGraw-Hill Companies srl
Variabili riferimento
PrintStream schermo;
schermo = System.out;
schermo
System.out
System.out : PrintStream
PrintStream
schermo
System.out : PrintStream
PrintStream
schermo.println("Ciao a tutti");
13
Variabili e assegnazione
Luca Cabibbo – Fondamenti di informatica: Oggetti e Java
Copyright © 2004 – The McGraw-Hill Companies srl
Uso di variabili riferimento
Le variabili riferimento sono normalmente usate
 per memorizzare il riferimento restituito dalla creazione di un
nuovo oggetto
Robot r;
/* crea un nuovo robot nel labirinto l */
r = new Robot(l);

per denotare l’oggetto destinatario di un messaggio
/* fa avanzare il robot r */
r.avanza();

come argomento nell’invocazione di un metodo o costruttore
/* fa attraversare a r il labirinto in cui si trova */
AttraversatoreLabirinti.attraversaLabirinto(r);
14
Variabili e assegnazione
Luca Cabibbo – Fondamenti di informatica: Oggetti e Java
Copyright © 2004 – The McGraw-Hill Companies srl
Stringhe
Un tipo di dato di uso molto comune è il tipo delle stringhe
 una stringa è una sequenza finita di caratteri
 le stringhe sono rappresentate dalla classe String
String stagione;
stagione = "estate";
stagione
"estate" : String
String
System.out.println(stagione);
15
Variabili e assegnazione
Luca Cabibbo – Fondamenti di informatica: Oggetti e Java
Copyright © 2004 – The McGraw-Hill Companies srl
Scarica

Variabili e assegnazione