Visualizzazione dei risultati da 1 a 5 su 5

Visualizzazione discussione

  1. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    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:

    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
    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:

    Primo errore:
    codice:
    ForeachTest.java:5: cannot find symbol
    symbol  : class Collection
    location: class ForeachTest
    Collection<string> coll = new ArrayList<String>(); // <-- da errore qui
    ^
    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:

    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:
    codice:
    ForeachTest.java:5: cannot find symbol
    symbol  : class string
    location: class ForeachTest
    Collection<string> coll = new ArrayList<String>(); // <-- da errore qui
               ^
    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 maiuscola

    Terzo errore:
    codice:
    ForeachTest.java:5: cannot find symbol
    symbol  : class ArrayList
    location: class ForeachTest
    Collection<string> coll = new ArrayList<String>(); // <-- da errore qui
                                  ^
    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.


    Ciao.
    Ultima modifica di LeleFT; 12-07-2016 a 11:35
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.