Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356

    lanciare un'eccezione da parte di un'altra eccezione

    Ciao a tutti,
    mi chiedevo se fosse possibile lanciare un'eccezione per una funzione però da un'altra funzione.

    Provo a spiegarmi meglio, ho un applicazione il cui main fa determinate cose gestendo le eccezioni.

    Vorrei fare in modo che, cliccando su un pulsante, (quindi da un'altra funzione) venga lanciata un'eccezione nel main che ne interrompa il flusso...pensate sia possibile?

    Cioè quello che mi interesserebbe fare sarebbe una sorta di

    throw new EccezioneMia(Main);

    cioè lanciare una eccezione dichiarata da me e poter dire in quale metodo lanciarla...

    forse è un po' troppo fantomatico eh?
    Jekkil

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: lanciare un'eccezione da parte di un'altra eccezione

    Originariamente inviato da Jekkil
    forse è un po' troppo fantomatico
    Sì ...

    Lanciando una eccezione dall'interno di un metodo, la JVM cammina a "ritroso" lungo lo stack delle chiamate. E ovviamente in quello stesso thread ... mica altri. Appena c'è un catch che può catturarla ..... il controllo passa a quel catch!
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    in realtà il thread sarebbe lo stesso.

    ti spiego...

    Il mio main fa queste cose:

    1) crea il JFrame dell'applicazione
    2) poi fa alcune operazioni
    3) poi si mette in attesa di un click su un particolare elemento del JFrame
    4) ricevuto il click invia ad un client un certo valore
    5) si mette in attesa di un valore di ritorno dal client
    6) fa delle operazioni
    7) torna al punto 3 e così via

    il tutto è racchiuso in un blocco try catch che gestisce le varie eccezioni

    Nel Jframe c'è un bottone "annulla" e cliccando su questo vorrei che l'esecuzione passasse direttamente al blocco catch..perchè per esempio, se io clicco il bottone e il main sta eseguendo il punto 5, prima di eseguire il blocco catch aspetterà la risposta del client e poi, vedendo che c'è qualcosa che non va (perchè ho clicccato annulla) eseguire il catch, mentre io vorrei fare in modo che eseguisse subito il catch...

    boh...se no mi sa che devo trovare una soluzione alternativa...
    Jekkil

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Jekkil
    in realtà il thread sarebbe lo stesso.

    1) crea il JFrame dell'applicazione
    2) poi fa alcune operazioni
    3) poi si mette in attesa di un click su un particolare elemento del JFrame
    No affatto, non è certo lo stesso!!
    L'evento di click di un pulsante (come qualunque evento della GUI) è dispacciato nel contesto del EDT (event dispatch thread). Che non è ovviamente il "main" thread (quello che la JVM usa per invocare il main() ).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    356
    giusto...non ci avevo pensato...
    uff..allora cerco una soluzione alternativa...anche se...non mi viene in mente nulla...cavoli..
    Jekkil

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