Effetti speciali e sviluppo giochi in Java(TM) -Metodi,classi e riferimenti
di Anibal Wainstein (traduzione di Hanami Solutions)
1.3 Metodi, classi
e riferimenti
Notate che la mia analisi della programmazione ad oggetti
è adottata per i fini pratici in cui la vedo utile,
pertanto non scriverò in merito alla teoria della programmazione
ad oggetti strettamente intesa.
1.3.1 Metodi
Un metodo è una parte di codice Java code che viene eseguita solo
quando viene chiamata (negli altri linguaggi sono equivalenti alle funzioni).
Possono anche contenere dichiarazioni di variabili che siano valide solo entro
detti metodi. Queste variabili sono quindi chiamate variabili locali.
Un metodo viene definito dall'intestazione del metodo e da due parentesi graffe "}{":
public void myMethod()
{
}
Il termine public indica che il metodo può essere chiamato
da altre classi, void indica che il metodo non restituisce un valore
quando ha terminato l'esecuzione e "myMethod"
è il nome del metodo. Si possono collocare variabili entro le
parentesi () che debbano essere fornite dall'utente quando si invoca
il metodo per metterlo in azione. Questa particolare funzione non è
associata ad alcuna variabile. Un altro esempio:
public int yourMethod(int a, int b)
{
a+=b;
return a;
}
Se il metodo restituisce un qualche valore allora "return" deve
essere sempre specificato. In questo particolare caso il metodo
restituirà un numero intero int che è la somma delle variabili
"a" e "b". La funzione viene chiamata come segue:
//Dichiariamo la variabile "result"
int result;
//"result" conterrà
//il numero 3 dopo la chiamata result = yourMethod(1,2);
Un altro esempio:
private byte anotherMethod(int a)
{
return ((byte) a);
}
Private indica che il metodo può essere usato solo entro
la classe in cui è stato definito. Nella sezione return si possono
effettuare calcoli seppure non sia esteticamente gradevole questo risulta in
un codice sorgente più compatto (e quindi meno codice). In questo
esempio effettuiamo un type cast sul numero intero "a" convertendolo a
a byte e ne riportiamo il risultato. Il metodo viene chiamato in questa maniera:
//"a" conterrà 41
byte a = anotherMethod(1234217);
Questo tra l'altro è lo stesso che scrivere:
byte a;
a = anotherMethod(1234217);
Quando convertite un numero intero a 32 bit in un byte allora rimangono solo gli
ultimi 8 bits del numero (gli ultimi 8 bits di 1234217 danno il valore 41).
Vi prego di notare che se non specificate un oggetto da restituire allora
quel metodo viene chiamato costruttore.
Deve avere lo stesso nome della classe e verrà invocato quando create un oggetto
appartenente a quella classe. Un costruttore deve sempre essere dichiarato
come pubblico:
public myklass(int a)
{
a++
}
Pagina seguente >>
|