Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258

    [java] domanda sull'eccezioni

    Puo generarsi un eccezione in fase di esecuzione, che il compilatore non la rileva in fase di compilazione?

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258
    seconda domanda: ho fatto una println sul getMessage() dell'eccezione e mi viene scritto null. Può essere un valore di ritorno che ho messo io?

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    certamente sì: tipico esempio è una divisione per 0.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,314
    Se non erro, tutte le eccezioni vengono generate in fase di esecuzione.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Originariamente inviato da alka
    Se non erro, tutte le eccezioni vengono generate in fase di esecuzione.
    Vero, ma certe vengono notificate in fase di compilazione (ed il codice non compila affatto): e sono tutte quelle non gestite nel codice, ma dichiarate esplicitamente nel metodo (con throws).
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  6. #6
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,314
    Originariamente inviato da Andrea1979
    Vero, ma certe vengono notificate in fase di compilazione (ed il codice non compila affatto): e sono tutte quelle non gestite nel codice, ma dichiarate esplicitamente nel metodo (con throws).
    Ok, ma quelle non sono eccezioni, ma...errori di compilazione.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Eh, la fame...
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  8. #8
    Originariamente inviato da alka
    Ok, ma quelle non sono eccezioni, ma...errori di compilazione.
    Si ma probabilmente lui intendeva se si possono verificare eccezioni che non vengono gestite da parti specifiche di codice, ad esempio se cerchi di scrivere su un file e non gestisci un'eccezione con un try catch ad esempio il compilatore ti segnala che ti sei dimenticato di gestire appunto l'eccezione in questione.

    Ciao.
    Si può vincere o perdere, l'importante è vincere o perdere da uomini...

    Neverland - Il mio Forum

  9. #9
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Oltre quanto detto appena sopra, ci sono eccezioni lievi ed eccezioni gravi: la differenza sta nel fatto che le eccezioni gravi, se non vengono gestite, provocano un errore nella compilazione, mentre quelle lievi no.

    Le eccezioni lievi sono quelle che derivano da RuntimeException. Un tipico caso è la NumberFormatException. Esempio:
    codice:
    public void mioMetodo() {
       String numero = "19";
       int numero = Integer.parseInt( numero );
    }
    Questo codice (senza alcun blocco try/catch, né throws) compilerà senza problemi.

    Premetto che io, per sicurezza, preferisco catturare tutte le eccezioni (se si chiamano eccezioni ci sarà un motivo... ). In rari casi evito di farlo (ad esempio, se devo leggere un numero da una base di dati dove questo numero è in chiave e mi viene restituito in una stringa).


    Ciao.
    "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

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 © 2024 vBulletin Solutions, Inc. All rights reserved.