Avatar billede mulemule Nybegynder
17. oktober 2006 - 13:05 Der er 5 kommentarer

Hvoran griber jeg alle Exceptions i en Applet.

Hej,

Kan man på en smart måde designe koden i sin applet, så at alle Exceptions bliver grebet, og en særlig metode kørt ?

Det er en applet som bruger et par forskellige klasser, og der kører også to tråde. Så jeg synes ikke bare at jeg kan putte en masse try-catch ind over det hele ?

Med venlig hilsen
Avatar billede jakoba Nybegynder
17. oktober 2006 - 16:13 #1
Exceptions er klasser, og de har allesamme samme superklasse Exception
så hvis du siger
  try {
      dinMetode( ... );
  } catch ( Exception e ) {
      // e kan nu være en numberformat exception eller en io exception eller
      // enhversomhelst anden exception der blev kastet i din metode
  }
Avatar billede mikkelbm Nybegynder
17. oktober 2006 - 17:56 #2
Du kan ikke have én stor try/catch, hvis du har flere klasser og metodekald der smider exceptions. Medmindre du kaster alle disse exceptions videre (hvilket jeg ikke vil mene er det rigtige at gøre - med få untagelser).
Det pæneste er at håndtere Exceptions hvor det giver mening. Det vil sige når metoden bliver kaldt.

Der kan blive smidt nogle runtime exceptions, som ikke nødvendigvis skal catches, men som alligevel kan give problemer. Disse kan fanges i en UncaughtExceptionHandler:

http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Thread.html#setUncaughtExceptionHandler(java.lang.Thread.UncaughtExceptionHandler)

Eksempel:

// Placeres som noget af det første i din main metode:
Thread.setDefaultUncaughtExceptionHandler(new UncaughtExceptionHandler());


public class UncaughtExceptionHandler implements Thread.UncaughtExceptionHandler
{
    public UncaughtExceptionHandler()
    {
        super();
    }

    public void uncaughtException(Thread t, Throwable e)
    {
        // Log uncaught exceptions...
    }
}
Avatar billede mulemule Nybegynder
17. oktober 2006 - 22:17 #3
Tak indtil videre, jeg kan godt lave almindelig try catch :) .

Jeg kigger lige på det der UncaughtExceptionHandler imorgen, det lyder som det jeg har brug for.

Hav det godt.,
Avatar billede mikkelbm Nybegynder
27. januar 2007 - 16:59 #4
Kommet videre?
Avatar billede mulemule Nybegynder
23. februar 2007 - 17:45 #5
Næ. Det hele er udskudt.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester