Cursus Raku / Objecten, in- en uitvoer en excepties / Excepties / Eigen excepties / Exercises

Te groot

Opgave

Definieer een eigen exceptieklasse TooBig die van Exception erft en twee attributen heeft, value en limit. Haar methode message moet Value <value> exceeds the limit of <limit> teruggeven.

Loop daarna over de waarden 30, 99 en 60 met een limiet van 50. Werp voor elke waarde alleen een TooBig wanneer de waarde de limiet overschrijdt, en gebruik een CATCH-faser met when TooBig die de melding afdrukt en, op een tweede regel, het attribuut limit van de exceptie rechtstreeks uitleest om Try a value up to <limit>. af te drukken. Een waarde binnen de limiet moet eenvoudigweg melden dat ze in orde is.

Dit laat zien dat de exceptie alleen voor de mislukkende getallen opgeworpen wordt; de andere gaan er zo doorheen, en de lus loopt hoe dan ook door.

Voorbeeld

Het programma drukt af:

Value 30 is within the limit
Value 99 exceeds the limit of 50
Try a value up to 50.
Value 60 exceeds the limit of 50
Try a value up to 50.

Oplossing

Bekijk de oplossing

Cursusnavigatie

Eigen excepties   |   Oplossing: Te groot