![]() ![]() |
|
![]() ![]() |
I dati che possono essere manipolati in un programma Java
si dividono in
Una classe definisce una collezione di oggetti, le possibili istanze della classe. Si possono creare oggetti (istanze) di una classe con la primitiva new. Si possono manipolare gli oggetti invocando su di essi i metodi d'istanza, che sono definiti nella classe. Ogni classe definisce un tipo di dati, i cui elementi sono le sue istanze. Quindi possiamo dichiarare variabili il cui tipo è una classe, e potremo assegnargli solo oggetti di quella classe. Il linguaggio Java comprende un gran numero di classi predefinite, e fornisce al programmatore i meccanismi necessari per definirne di nuove. |
![]() ![]() |
|
![]() ![]() |
Tra le centinaia di classi fornite
da Java, la classe java.awt.Rectangle
definisce degli oggetti che rappresentano dei rettangoli.
Ogni rettangolo (istanza della classe) ha quattro variabili d'istanza, i cui valori rappresentano la dimensione del rettangolo (height e width) e la posizione nel piano del suo vertice superiore sinistro (x e y). Ad esempio, in un programma possiamo creare tre rettangoli con opportuni valori per le variabili d'istanza. Ogni oggetto viene rappresentato da uno scatolotto avente in alto il nome della classe, e sotto le variabili d'istanza.
|
![]() ![]() |
|
![]() ![]() |
Vogliamo scrivere un programma che:
Consultando la documentazione della classe Rectangle [locale, Medialab, Sun] vediamo come costruire un rettangolo con i valori desiderati per la variabili d'istanza, e che esiste un metodo d'istanza translate. Il programma risultante è il seguente:
|
![]() ![]() |
|
![]() ![]() |
Dichiariamo di voler usare la classe Rectangle del package
java.awt:
Dichiariamo una variabile rect di tipo Rectangle e le assegnamo un nuovo oggetto con i valori desiderati per le variabili d'istanza:
![]() Stampiamo lo stato del rettangolo:
Invochiamo il metodo d'istanza translate sull'oggetto rect per spostarlo della quantità voluta:
![]() Infine stampiamo lo stato finale:
Importante: per invocare un metodo d'istanza su di un oggetto si scrive |