Lecture overview -- Keyboard shortcut: 'u'  Previous page: Motivation og problemstillinger [Section] -- Keyboard shortcut: 'p'  Next page: Fejl søges håndteret tæt på det sted hvor fejlene opstår -- Keyboard shortcut: 'n'  Lecture notes - all slides and notes together  slide -- Keyboard shortcut: 't'  Help page about these notes  Alphabetic index  Course home  Play sound for this page -- Keyboard shortcut: 'y'  Page 2 : 26
Forelæsningsnoter i Objekt-orienteret Programmering
Undtagelseshåndtering
Normal- og fejltilfælde behandles under ét

I denne første afdeling af lektionen tager vi et antal forskellige problemstillinger op til behandling. Vi starter med at se på programmer, hvor normaltilfælde og fejltilfælde behandles samlet. Dette giver ofte uoverskuelige programmer

I ekstreme situationer kan det være svært at identificere det egentlige program i forhold til de fejlbehandlende dele af et program

/user/normark/courses/prog1/prog1-01/sources/java/noteEksempler/Copy.javaEt program uden fejlhåndtering som kopierer én fil over på en anden.

Et program uden fejlhåndtering som kopierer én fil over på en anden. Vi har tidligere i kurset set på netop dette program. Læg mærke til at programmet kan give anledning til en IOException.

/user/normark/courses/prog1/prog1-01/sources/java/noteEksempler/CopyWithErrorHandling.javaEt (pseudo)program med fejlhåndtering som kopierer én fil over på en anden.

Et (pseudo)program med fejlhåndtering som kopierer én fil over på en anden. Bemærk at programmet forsøger at holde al fejlhåndteringen inden for rammerne af kopieringsprogrammet. Derfor giver denne udgave af programmet ikke anledning til at main kan kaste et exception. Programmet forsøger side om side med kopieringsaspekterne (normaltilfældet) at håndtere en række fejltilfælde. Vi har farvelagt fejlaspekterne med rødt. De sorte dele af programmet udgør de normale kopieringsdele af programmet. Programmet tager udgangspunkt i ovenstående program, men det er ikke gennemført i 100 procent Java.

Sondringen mellem normalprogram og fejlbehandlende program udgør en særligt form for ansvarsfordeling

Vi har tidligere - i anden sammenhæng - set på ansvarsfordeling mellem klient og forsyner (mellem kalder og den kaldte procedure). Her lader vi op til en anden form for ansvarsfordeling, nemlig mellem normaltilfælde og undtagelsestilfælde