Salve a tutti, ho una domanda banale e non vorrei chiedere cose già chieste, ma dopo una ricerca in internet e qui sul forum ho trovato solo qualche domanda simile alla mia, ma che non risolve il mio problema.
Per più di un anno ho evitato come la peste l'uso dei package, ora sto provando una libreria che ne fa uso e vorrei capirci di più,quindi mi sono creato un piccolo esempio
.
Preciso che il problema non si verifica quando devo richiamare una classe in una sottocartella, ma se devo collegare più classi in diverse cartelle, in particolare importare da una sottocartella una classe di una cartella a livello superiore.
Ecco la struttura di directory creata:
livello1->Padre.java
->livello2
->Figlio.java
->livello3
->Nipote.java
Quindi le tre directory sono in ordine livello1,livello2 e livello3 con i tre file Padre,Figlio e Nipote.
Ecco come ho cercato di dichiarare e importare i package nelle tre classi:
Padre.java:
codice:
package livello1;
import livello1.livello2.Figlio;
import livello1.livello2.livello3.Nipote;
public class Padre
{
public static void main(String[] args)
{
Figlio f=new Figlio();
Nipote n=new Nipote();
}
}
Figlio.java:
codice:
package livello1.livello2;
import livello1.Padre;
import livello1.livello2.livello3.Nipote;
public class Figlio
{
public static void main(String[] args)
{
Padre p=new Padre();
Nipote n=new Nipote();
}
}
Nipote.java:
codice:
package livello1.livello2.livello3;
import livello1.Padre;
import livello1.livello2.Figlio;
public class Nipote
{
public static void main(String[] args)
{
Figlio f=new Figlio();
Padre p=new Padre();
}
}
Con le classi scritte in questo modo non compila niente, devo dire che ho provato diverse e diverse combinazioni, ma visto che non funzionava tutto ho riportato quello che a me pare il modo più logico di collegare i vari package.
Spero che la soluzione non sia banale, ma davvero non riesco a farlo funzionare.Grazie a tutti per l'aiuto !