Jens Bennedsen, 2003Introducerende objektorienteret programmering Exceptions
Jens Bennedsen, 2003Introducerende objektorienteret programmering Fejl Syntaks fejl – findes af oversætteren Type fejl – findes af oversætteren Semantiske fejl – findes ikke af oversætteren –fejlagtig kode udenlig løkke –“uheldig” anvendelse af kode angivelse af et forkert index –anvendelse af kode som den ikke er tilsigtet kald af en metode med en forkert parameter
Jens Bennedsen, 2003Introducerende objektorienteret programmering Ansvar for fejlhåndtering Hvem har ansvaret? –Serveren: Skal lave alle mulige checks (specielt på parametre) Hvad hvis klienten “glemmer” at checke på resultatet? Mange gange ineffektivt –Klienten større mulighed for fejl – mindre robusthed sværrere at genbruge kan ikke checkes af oversætteren Klient server metode kald
Jens Bennedsen, 2003Introducerende objektorienteret programmering 1. eksempel
Jens Bennedsen, 2003Introducerende objektorienteret programmering Exceptions (1) Et objekt der repræsenterer en fejl Der findes en række predefinerede exceptions: Throwable Exception Error RuntimeException IllegalArgumentException checkes af over- sætteren checkes IKKE af over- sætteren
Jens Bennedsen, 2003Introducerende objektorienteret programmering Exceptions (2) Man kan lave sin egne subklasser Exception WrongArgumentException