Package
Un
package
in Java permette di raggruppare in
un'unica entità complessa classi Java
logicamente
correlate.
Fisicamente
il package è una cartella del nostro sistema operativo;
Per
eleggere una cartella a package, una classe Java deve dichiarare nel suo codice
la sua appartenenza a quel determinato package, oltre a risiedere fisicamente
all’interno di
essa.
L’istruzione
package deve
essere assolutamente la prima in un file Java.
Si può importare
la classe singola o l’intero package. Le istruzioni di import seguono quelle
del package.
Vediamo il codice
delle classi Stampe e Principale:
package pc1.pc2;
public class Stampe {
public void scriviQualcosa() {
System.out.println("!");
}
}
e
package pc1;
public class Principale {
public static void main(String[] args) {
Stampe s = new Stampe();
}
}
I comandi package indicano a quale package appartiene la
classe. Principale è nel package pc1 mentre Stampe è nel package pc1.pc2. Se si
vuole usare la classe Stampe, che è pubblica, si può o importare la singola
classe import pc1.pc2.Stampe; oppure
l’intero package import pc1.pc2.*;
. Attenzione al fatto che sebbene pc2 sia
fisicamente dentro pc1 non sono lo stesso pacchetto e pc2 non è una classe ma
un pacchetto a se stante, quindi queste sintassi import pc1.*; non
funziona perché stiamo importando tutte le classi di pc1 ma Stampe non è in
quel pacchetto.
Una ultima
soluzione invece che importare classi o pacchetti è quella di indicare il
percorso completo della classe pc1.pc2.Stampe s = new pc1.pc2.Stampe();.
Quindi tutte
queste modifiche singolarmente fanno compilare Principale:
package pc1;
import pc1.pc2.*;
public class Principale {
public static void
main(String[] args) {
Stampe s = new Stampe();
}
}
|
package pc1;
import pc1.pc2.Stampe;
public class Principale {
public static void
main(String[] args) {
Stampe s = new Stampe();
}
}
|
package pc1;
public class Principale {
public static void
main(String[] args) {
pc1.pc2.Stampe s = new
pc1.pc2.Stampe();
}
}
|
Il package Java.lang è unico importato in automatico in tutti i programmi.
Nessun commento:
Posta un commento