Programma's van elke vorm van complexiteit vaak lopen in onvoorziene fouten . Echter , fouten vaak voorzien - althans statistisch voorspelbare . In deze gevallen kan de programmeur een " uitzondering handler " een uitzondering opgeworpen door een programma vangt coderen . De uitzondering signalen dat er iets mis is gegaan en moet worden aangepakt . Dit stelt programmeurs in staat om te anticiperen op fouten en code om hen heen , in plaats van te laten crashen van een programma . Uitzonderingen beginnen als low- level uitzonderingen - en op deze low-level uitzonderingen hoger niveau uitzonderingen zijn gebouwd . Uitzonderingen In het programmeren van computers , " uitzonderingen " vormen een probleem in de code . Dit probleem meestal het gevolg van onverwacht gedrag van de code , zoals een array index ontsluiting geheugen buiten de omvang van de array . Een uitzondering signalen naar de compiler of interpreter dat er iets mis is gegaan - en dat, indien niet behandeld , kon de fout geheugen lekken of het programma laten crashen . Door het gebruik van uitzonderingen , kan de programmeur melding van uitzonderingen en programma routines om fouten te corrigeren Uitzondering ontvangen. Throwing Om een uitzondering te pakken , het programma voor het eerst " gooit " de uitzondering . Dit betekent simpelweg dat wanneer er een fout optreedt , de compiler of interpreter een uitzondering instantie specifiek zijn voor dat type fout . De programmeur kan dan code om te zoeken naar die specifieke uitzondering bijvoorbeeld schrijven en op haar optreden , passende maatregelen nemen. Als op zoek naar een specifiek type uitzondering is echter de programmeur misschien niet andere uitzonderingen gebeurt op hetzelfde moment vangen . Low - Level Uitzonderingen als geïllustreerd in de Java programmeertaal kan uitzonderingen vele vormen aannemen . Vergelijkbare uitzonderingen mogelijk onder dezelfde categorie vallen , of verschillende uitzonderingen kunnen allemaal afstammen van een gemeenschappelijk probleem . In dit geval bevat Java uitzonderingen lager niveau als onderdeel van de object - georiënteerd ontwerp . Deze uitzonderingen omgaan met een breder bereik dan meer specifiek hoger niveau uitzonderingen . Bijvoorbeeld , de " uitzondering " object in Java dient als prototype voor alle uitzonderingen . De programmeur probeert een " Exception " object op te nemen worden alle uitzonderingen te vangen . Echter , als de programmeur wil meer specifieke uitzonderingen te vangen , ze moeten ze opgeven door een hoger niveau uitzondering voorwerpen , zoals " IOException " of " RuntimeException . " Hardware Interrupts Zelfs lager dan software uitzonderingen zijn hardware- uitzonderingen . Deze uitzonderingen komen in het laagste niveau code in de hardware van de computer en worden gewoonlijk toegewezen aan uitzonderingen die door het besturingssysteem . Deze uitzonderingen worden verhoogd wanneer bepaalde specifieke taken worden geprobeerd , zoals delen door nul of het creëren van een variabele waarde groter is dan het aangewezen om in het geheugen te houden soort . Debuggers of low - level code zoals assemblage of low - level C meestal omgaan met deze uitzonderingen .
|