Avatar billede dn666 Nybegynder
06. december 2005 - 14:21 Der er 8 kommentarer og
1 løsning

Exceptions on exceptions

How would i catch the NullPointerException on
String s = e2.getClass().getName();
in this code ??




try {
    Exception e1 = null;
    System.out.println("1");
    throw e1;
} catch(Exception e2) {
    try {
        System.out.println("2");
        String s = e2.getClass().getName();
        System.out.println("s: " + s);
    } catch(Exception e3) {
        System.out.println("3");
    }
}
Avatar billede dn666 Nybegynder
06. december 2005 - 14:22 #1
It sets s to a String: "java.lang.NullPointerException"
the output is:
1
2
s: java.lang.NullPointerException
Avatar billede arne_v Ekspert
06. december 2005 - 14:51 #2
String s = e2.getClass().getName();

thrower vel ikke en NullPointerException

den sætter vel bare s til " java.lang.NullPointerException" fordi
e2 faktisk er en sådan klasse
Avatar billede dn666 Nybegynder
06. december 2005 - 15:03 #3
men hvor får jeg så fat i min NullPointer ?
er e1 så en inner af e2 ?
Avatar billede arne_v Ekspert
06. december 2005 - 15:23 #4
En null pointer er jo null

:-)

Prøv evt. at forklare problem stillingen på et lidt højere niveau

For jeg kan ikke gennemskue hvilket problem det er du forsøger at løse
Avatar billede dn666 Nybegynder
06. december 2005 - 16:01 #5
Det er ikke lige et problem jeg har det var bare en tanke.. :)

Hvordan bliver det regnet ud runtime at der skal castes til en NullPointerException, når der bare bliver smidt en Exception der er null.. det må da være en slags hardcoded hack..
Avatar billede arne_v Ekspert
06. december 2005 - 16:17 #6
tror jeg ikke

jeg tror bare at Java forsøger at bruge det Exception objekt den forventer
Avatar billede dn666 Nybegynder
08. december 2005 - 17:35 #7
hmm. ok, skal der lige deles lidt ud..
Avatar billede arne_v Ekspert
31. december 2005 - 14:09 #8
skal vi have afsluttet her ?
Avatar billede dn666 Nybegynder
03. januar 2006 - 12:42 #9
ye
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