|
|
En operation kan lykkes eller fejle | Når vi arbejder med metoder som er specificeret med pre- og postbetingelser har vi et godt grundlag til at definere success og fiasko. Vi vil benytte ordene hhv. 'at operationen lykkes' og 'operationen fejler' |
| Vi siger at en operation lykkes hvis den opfylder kontrakten, når operationen er kørt til ende. At opfylde kontrakten i denne
situation betyder at postbetingelsen skal være sand, samt at klasseinvarianten i den klasse, hvor metoden befinder sig, skal være sand Som en naturlig modsætning siger vi at operationen fejler hvis den ikke lykkes |
Hvis en prebetingelse af en metode m brydes (bliver falsk) fejler den metode, som har kaldt m |
|
| Hvis en metode har en postbetingelse der ikke blot er 'true' betyder det, at under visse omstændigheder vil postbetingelsen kunne brydes. Dette forårsager en exception, som måske skal håndteres uden for metoden. Metoderne på den dynamiske kæde af kald får chancen for at håndtere undtagelsen inden programmet evt. stopper sin udførelse. |