P. 1
Java programozás 1.3 verzió

Java programozás 1.3 verzió

|Views: 132|Likes:
Published by MuciBuci88

More info:

Published by: MuciBuci88 on Jan 30, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

10/23/2011

pdf

text

original

A kivétel a „kivételes esemény” kifejezés rövidítése.
Definíció: A kivétel egy olyan esemény, amely a program végrehajtásakor keletkezik,
megszakítva az utasítások végrehajtásának normális folyamatát.
Ha egy metódusban hiba keletkezik, a metódus egy objektumot hoz létre, melyet átad a
futtatási környezetnek. Az objektum – melyet kivétel objektumnak neveznek – tartal-
mazza az információt a hibáról, annak típusáról és a program állapotáról, amikor a hiba
létrejött. Kivétel objektum létrehozását és futtatási rendszer által történő kezelését kivé-
teldobásnak hívják.
Miután egy metódus eldob egy kivételt, a futtató környezet megpróbál a kezelésére talál-
ni valamit. A lehetséges dolgok, melyek a kivételt kezelik a meghívott metódusok rende-
zett listája abban a metódusban, ahol a hiba keletkezett. A metódusok listáját hívási ve-
remnek nevezzük.

A futtató rendszer átkutatja a hívási vermet olyan metódus után, mely tartalmaz kivétel
kezelésére alkalmas kódblokkot. Ezt a blokkot kivételkezelőnek nevezzük. A keresés ab-
ban a metódusban kezdődik, ahol a hiba generálódott, majd a hívási verem metódusai-
nak fordított sorrendjében folytatódik. Mikor egy megfelelő kezelőt talál, a futtató rend-
szer, átadja a kivételt a kezelőnek. Egy kivételkezelő megfelelő, ha az eldobott kivétel ob-
jektum típusa megegyezik azzal a típussal, melyet a kezelő kezelni tud. A kivételkezelő
kiválasztását úgy is nevezik, hogy elkapni a kivételt. Ha a futtatókörnyezet a metódusok
átkutatása után sem talál megfelelő kivételkezelőt, mint ahogy a következő ábra mutatja,
a futtató rendszer (és ez által a program) leáll.

18.Kivételkezelés

153. oldal

Hibák kezelésére használt kivételeknek van néhány előnye a hagyományos hibakezelési
technikákkal szemben. (Később visszatérünk a témára.)

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->