Differenze tra le versioni di "Java/Classi e oggetti"

m
Con più directory cambia di poco: metteremo un punto “.” tra una directory e l'altra sul codice dopo l'istruzione package. La jvm cambierà automaticamente il punto nel carattere separatore del sistema operativo usato e la classe dovrà essere archiviata nell'ultima sottodirectory.
 
MettiamoFacciamo, cheper voglio fareesempio, delle classi di saluto simili ad HelloWorld ma, in molte lingue, eper tirarle fuori, quando ne hoal bisogno, secondo la nazionalitàlingua parlata deglidagli utenti del programma.
 
Faremo questi file, notare il nome del package che ora sono con una directory e e una sottodirectory separate dal punto:
}
</source>
Se compilo ognuno di questi file con l'opzione "-d" del comando "javac", il compilatore
 
Sulappronterà discosul prepareròdisco la directory “saluti” con all'interno le cartelle “inghilterra”, “francia”, “italia”, tutte e tre queste cartelle sono allo stesso livello: sottodirectory di saluti.
 
Non cambia niente per la prima parte dell'indirizzo, il classpath, di cui parlavamo sopra che rimane invariato.
Un'altra cartella ancora.
 
Se archivio con un package così “packages saluti.italia.dialetto” allora dovràci essercisarà la cartella dialetto come sottodirectory della cartella italia. All'interno di dialetto dovranno esserci i file corrispondenti dei saluti italiani in dialetto, ognuno con un diverso nome.
I file, anche se con nomi uguali “Helloworld.class”, sono stati messi, comunque, in directory separate e i file dal nome diverso nella medesima directory. Tutti sono comunque individuabili e riprendibili.
 
L' istruzione <source lang=java>package nomedelpackage;</source> è facoltativa, è possibile non metterla: se queste non c'è, il compilatore inserisce la classe in un package di default.
222

contributi