Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    cannot find symbol

    Il mio problema è che mi da errore nella compilazione della source Time_Client.java. Nella compilazione mi dice "cannot find simbol" ed avendo preso il codice dai listati di un manuale di java non so proprio dove cercare il problema.
    Di seguito metto la source di Time e il relativo Client.

    codice:
    package com.pellegrinoprincipe;
    
    public class Time extends Object
    {
        // variabili di istanza private
        private int ora;
        private int minuti;
        private int secondi;
    
        public Time() // costruttore
        {
            ora = minuti = secondi = 0;
        }
        public void setTime(int o, int m, int s) // metodo per impostare un tempo
        {
            ora = (o < 24 && o >= 0) ? o : 0;
            minuti = (m < 60 && m >= 0) ? m : 0;
            secondi = (s < 60 && s >= 0) ? s : 0;
        }
        public String getTime() // metodo per ottenere un tempo
        {
            return ora + ":" + minuti + ":" + secondi;
        }
        public String toString() // stampa una rappresentazione leggibile di un oggetto Time
        {
            return "Orario corrente: " + getTime();
        }
    }
    Client del programma:

    codice:
    package com.pellegrinoprincipe;
    
    public class Time_Client
    {
        public static void main(String[] args)
        {
            Time t = new Time(); // istanza di Time. Qui mi da errore 
    
            System.out.println("Time con i valori di default: " + t.getTime());
            t.setTime(14, 30, 56); // imposto nuovi valori per un tempo
            System.out.println("Time con i valori impostati: " + t);
        }
    }
    grazie mille

  2. #2

    Re: cannot find symbol

    Originariamente inviato da erpupico1
    Il mio problema è che mi da errore nella compilazione della source Time_Client.java. Nella compilazione mi dice "cannot find simbol" ...
    "cannot find simbol" cosa?!?!
    Perchè vi ostinate a tagliare i messaggi di errore che di soito sono chiarissimi ed esplicativi?!
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    613

    Re: Re: cannot find symbol

    Originariamente inviato da satifal
    "cannot find simbol" cosa?!?!
    Perchè vi ostinate a tagliare i messaggi di errore che di soito sono chiarissimi ed esplicativi?!
    C'è una riga nel codice dove sotto commento sta scritto "qui dà errore", fermo restando che non dovremmo esser noi a cercarla, siamo d'accordo.

    Non trova la classe Time suppongo, la struttura delle cartelle contenente i sorgenti rispecchia il nome del package? Come compili i due file? Compili prima Time e poi Time_Client giusto?

    Ah comunque perché estendi Object? Ogni classe estende Object se non diversamente specificato.

  4. #4
    pardon, ero di fretta

    allora, l'errore è il seguente:
    codice:
    Time_Client.java:7: error: cannot find symbol
               Time t = new Time();
               ^
          symbol: class Time
          location: class Time_Client
    
    Time_Client.java:7: error: cannot find symbol
               Time t = new Time();
                            ^
          symbol: class Time
          location: class Time_Client
    2 errors

  5. #5

    Re: Re: Re: cannot find symbol

    Originariamente inviato da Kaamos
    C'è una riga nel codice dove sotto commento sta scritto "qui dà errore", fermo restando che non dovremmo esser noi a cercarla, siamo d'accordo.

    Non trova la classe Time suppongo, la struttura delle cartelle contenente i sorgenti rispecchia il nome del package? Come compili i due file?
    Si avevo notato il commento successivamente, ma ormai è prassi comune pretendere un aiuto e limitarsi a dire genericamente che una cosa non funziona oppure da errore o segare gli stacktrace di java.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  6. #6
    Dunque, io ho preso il testo del manuale pari pari e ho cercato di eseguirlo. L'estensione ad Object era già presente.
    Comunque naturalmente prima di tutto ho compilato "Time" e successivamente Time_Client e lo faccio da terminale con javac e tutti i file .class me li salva nella cartella com.pellegrinoprincipe

  7. #7
    Originariamente inviato da erpupico1
    pardon, ero di fretta

    allora, l'errore è il seguente:
    codice:
    Time_Client.java:7: error: cannot find symbol
               Time t = new Time();
               ^
          symbol: class Time
          location: class Time_Client
    
    Time_Client.java:7: error: cannot find symbol
               Time t = new Time();
                            ^
          symbol: class Time
          location: class Time_Client
    2 errors
    Stai compilando da riga di comando? Sei sicuro che la classe Time sia stata compilata?
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  8. #8
    Sicurissimo... Sono anche andato a controllare nella cartella che il file Time.class fosse presente

  9. #9
    Stai sicuramente compilando dall'interno della directory "pellegrinoprincipe". Devi compilare dalla cartella che contiene com:

    codice:
    javac com\pellegrinoprincipe\Time_Client.java
    Ti basta compilare il client ed il compilatore compilerà automaticamente anche le sue dipendenze.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    613
    P.S.: sarebbe buona norma segnalare l'override con l'apposita annotazione @Override.

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.