In realtà anche trovarsi di fronte agli errori è utile (anzi, molto più che utile): in questo modo impari a prendere confidenza con i messaggi di errore del compilatore e a destreggiarti per capirli e risolverli.
Prendiamo il tuo sorgente (così com'era nel tuo primo post) e proviamo a compilarlo. I messaggi del compilatore sono:
Il compilatore dice che ci sono 3 errori e te li segnala tutti (con tanto di "punto in cui è stato generato" tramite il simbolo " ^ "). Vediamoli uno per uno:codice:ForeachTest.java:5: cannot find symbol symbol : class Collection location: class ForeachTest Collection<string> coll = new ArrayList<String>(); // <-- da errore qui ^ ForeachTest.java:5: cannot find symbol symbol : class string location: class ForeachTest Collection<string> coll = new ArrayList<String>(); // <-- da errore qui ^ ForeachTest.java:5: cannot find symbol symbol : class ArrayList location: class ForeachTest Collection<string> coll = new ArrayList<String>(); // <-- da errore qui ^ 3 errors
Primo errore:
cannot find symbol: significa che ha incontrato un "simbolo" (ovvero una parola) che non è riuscito a riconoscere (può essere una variabile mai dichiarata, il nome di una classe che non esiste, ecc). Lui ti dice tutto:codice:ForeachTest.java:5: cannot find symbol symbol : class Collection location: class ForeachTest Collection<string> coll = new ArrayList<String>(); // <-- da errore qui ^
1) L'errore lo ha trovato nel file "ForeachTest.java" alla riga 5 (ForeachTest.java:5)
2) Il simbolo che non è riuscito ad identificare è la scritta "Collection" in un posto in cui si aspetta il nome di una classe.
3) Tale simbolo è stato trovato dentro alla classe ForeachTest
4) Ti fa vedere la riga di codice e il punto esatto ( ^ ) dove compare il simbolo non trovato.
Quindi lui ti sta dicendo che tu hai scritto "Collection" ma che lui non sa cosa sia, e questo, quando avrai un po' di pratica, è eloquente: non hai "importato" la classe Collection... manca l'import.
Secondo errore:
Di nuovo: cannot find symbol. Stavolta il simbolo è la scritta "string". In questo caso è banale: il nome della classe è stato scritto male perchè è in minuscolo, mentre i nomi delle classi (nel core standard di Java) sono tutte con la maiuscolacodice:ForeachTest.java:5: cannot find symbol symbol : class string location: class ForeachTest Collection<string> coll = new ArrayList<String>(); // <-- da errore qui ^
Terzo errore:
Di nuovo... cannot find symbol. Sta volta il simbolo è "ArrayList". Il nome della classe è scritto giusto, quindi significa solo che non trova tale classe... ed infatti, manca l'import.codice:ForeachTest.java:5: cannot find symbol symbol : class ArrayList location: class ForeachTest Collection<string> coll = new ArrayList<String>(); // <-- da errore qui ^
Ciao.![]()



Rispondi quotando
