Kezdőlap

|

Mi a kreditvadasz.hu Egy felsőoktatási közösségi oldal amely segít kapcsolatot tartani a hallgatók között, így segítséget nyújt a sikeres tanulmányokhoz...

oop

Országok listájaHungaryMiskolci EgyetemGépészmérnöki és Informatikai KarGazdaságinformatikusObjektum Orientált ProgramozásJegyzetekoop

2008.05.28 16:32:54
(10)
Szerző: Reggel Norbert
Cimkék: egy kis segítség vizsgára


Az alábbi szöveg egy formázás és képek nélküli előnézete a dokumentumnak. A tökéletes megjelenítéshez jelentkezz be, majd töltsd le a dokumentumot.
Az oop alapelvei: Egy oo program egymással kommunikáló objektumok összessége, melyben minden objektumnak megvan a jól meghatározott feladatköre. Az ember az objektumokat automatikusan rendszerezi, s azokat a számára fontos tulajdonságok alapján kategóriákba, osztályokba sorolja. Java platformhoz (nem a JVM értelmezi).
Osztálydefiníció, adattag, metódus fogalma. Példányosítás: A Java program osztályok halmaza. Egy osztálydefiníció egyben teljesen fordítási egység (de általában nem teljes prg). Az osztály és a definícióját tartalmazó file neve szqkebb kategóriát. Szokásos konvenciók: -egy osztály csak akkor legyen public, ha általános használatra szántuk. -az adattagok private (esetleg protected) minQsítést kapjanak. Ha szükséges, metódusokon keresztül legyenek elérhetQk. A public adattag hiba! -a metódusok közül csak a külvilág számára Az objektum adatainak ekkor alapértelmezések szerint lesznek beállítva. Ha az osztályban létezik egy akármilyen explicit konstruktor, akkor az osztálynak nem lesz implicit, alapértelmezés szerinti konstruktore. Minden objektumreferenciának van egy statikus típusa; azt a deklaráláskor határozzuk meg. Ez a referencia a program futása közben különféle osztályú objektumokat azonosíthat. Az objektumreferencia által azonosított objektum a referencia valódi, más szóval dinamikus típusa. állítható helyre, óhatatlanul leáll. –Kivétel(Exception): hibakezelés után a prg folytatódhat. Kivételkezelés utasításai: -try: védett kód kijelölése. –throw: kivétel dobása, generálása. –catch: kivétel elkapása, a blokkban definiált utsaítások végrehajtása.  finally: végül, akár volt kivétel, akár nem volt, lefut. sabb legyen! Ha egy Qskivétel elQbb szerepelne, mint az utód, akkor az Qs elkapná az utódkivételt is, és ezzel elérhetetlenné tenné az utódot definiáló catch blokkot. A fordítóprogram meg is követeli a helyes sorrendet. Ha a kivétel egyik catch blokkra sem húzható rá, akkor a kivétel továbbadódik a Az objektum információt tárol és kérésre feladatokat hajt végre. Az objektum Az objektum felelQs feladatainak elvégzéséért. Az objektum logikailag összetartozó adatok és a rajtuk dolgozó algoritmusok (rutin, metódus, prgramkód) összessége. Az objektumnak mindig van vmilyen állapota, ami megfe- meg kell egyezzen! Osztályok csomagokba rendelhetQk, ezzel lehet modulokat képezni. Az osztálydefiníció fejlécbQl és {} zárójelpárral határolt törzsbQl áll. A fejléc formája: [módosítók]class [egyebek]. Az osztály neve egy azonosító. A törzsben adattagok és metódusok és szükségesek legyenek public minQsítésqek.
A this pszeudó változó és szerep: A this implicit paraméter nem más, mint memóriacím, amely a megszólított objektum referenciája. Egy példánymetódus innen tudja, melyik példányon dolgozik. A this által mutatott objektumon. Objektumok megszqnése. SzemétgyqjtQ, finalize metódus: A C programozási nyelvben a futás közben, dinamikusan lefoglalt memória területek helyes felszabadításáért a programozó a felelQs. Ez számos hiba forrása lehet. A Java-ban csak dinamikusan lehet objektumot létrehozni, de nem kell Absztrakt metódus és osztály: Gyakran elQfordul a tervezés során, hogy egy osztály szintjén tudjuk, hogy vmilyen metódus szükséges lesz a leszármazottakban, de még nem lehet megadni az implementációját. Ezért a Java nyelv megengedi törzs nélküli metódus definiálását. Az ilyen metódust az Kivételek keletkezése és szándékos elQidézése  throw: A kivétel olyan objektum, amelynek osztálya az Exception osztályból származik. Kivételt az API vmelyik metódusa, vagy a programozó kelthet, a következQképpen: throw new (); Vagyis létrehozunk hívó metódusnak. Ha ellenQrzött kivételrQl van szó, akkor a metódus throws kivételében definiálni kell a kivétel továbbadását. Ha a try-catch-finally sikeresen kezelte a kivételeket, akkor a blokk utáni utasítással folytatódik a program. finally blokk: Ha van finally blokk, akkor az minden körülmé lel az adatok pillanatnyi értékeinek. Egy feladat elvégzése után az objektum állapota megváltozhat. Két azonos osztályhoz tartozó objektumnak akkor és csak akkor ugyan az, az állapota, ha az adatok értékei rendre megegyeznek. Az objektumok egyértelmqen azonosíthatók. Az objektum azonossága további elemek definíciói állhatnak. Adattagok: [módosítók] típusnév azonosítólista. A típusnév vmelyik egyszerq típus, tömb típus, vagy osztálynév lehet. A névlista elemeit vesszQvel választjuk el, formájuk: azonosító[= inicializáló kifejezés]. Az inicializáló kifejezésben csak elQtte már dekla- Egymásból hívott metódusok esetén a this automatikusan továbbadódik.
Metódusnév túlterhelés: Egy metódust nem a neve, hanem a szignatúrája azonosít, amely a nevén kívül tartalmazza a metódus összes paraméterének típusát a deklarálás sorrendjében. Ezért megtehetjük, és nem is lehet megszüntetni. Az objektumok automatikus megszüntetése a szemétgyqjtQ mechanizmus (garbage collector) feladata. Automatikus szemétgyqjtés: A rendszer bizonyos idQnként automatikusan felszabadítja a hivatkozás nélküli objektumok memóriahelyeit. Minden osztályhoz defi- abstract minQsítQvel kell ellátni. Ha az osztály tartalmaz absztrakt metódust, az osztályt is az abstract minQsítQvel kell ellátni. Formai szabályok: -absztrakt egy metódus, ha nincs törzse. Megvalósítást, majd csak a felüldefiniálás során kap.  absztrakt metódusnak nem lehet módosítója a private, final, egy megfelelQ osztályú objektumot (new), és beejtjük (throw) a program vérkeringésébe. Ezzel az objektum a kivételkezelQ mechanizmusa felügyelete alá kerül. A kivétel a metódushívási láncon visszafelé haladva kiszáll a programból. Kivételt a programozó is könnyedén elQidézhet a throw operátor nyek között végrehajtódik, mindegy, hogy a végrehajtás normális volt-e, kiugrottak-e a try blokkból, ill. kezeltük-e a keletkezQ hibát, vagy sem. A finally blokkban szokás elvégezni a mindenképpen szükséges befejezQ tevékenységeket. független a tárolt értékektQl. Az absztrakció révén azonban két objektum állapota mégis megegyezhet, de a két objektum akkor sem azonos, ha állapotaik megegyeznek. Az osztály (class) olyan objektumminta, vagy típus, amelynek alapján példányokat (objektumokat) hozhatunk létre. rált adattagok használhatók. Az inicializáló kifejezés minden példányosítás esetén kiértékelQdik. Nem inicializált adattag az alábbi default értékkel inicializálódik: -boolean: false; -char: \u0000 ; -minden egész típus: 0; -minden lebegQpontos típus: 0.0; -osztály típus: null. hogy ugyanolyan néven különbözQ paraméterezésq metódusokat is deklarálunk. Ezt a jelenséget metódusok túlterhelésének nevezzük. Hívásakor a fordító megkeresi azt a metódust, amely mind névben, mind paraméterezésben ráhúzható a hívásra. Az aktuális hívástól függQen az a metódus fog futni, niálható egy protected void finalize() throws Throwable metódus. A szemétgyüjtQ hívja meg, még az objektum tárterületének megszqnése elQtt. Feladata minden olyan mellékhatás megszüntetése, amelyet az objektum élete során okozott. static hiszen az ilyen metódusokat nem lehet felüldefiniálni.  absztrakt egy osztály, ha van legalább egy absztrakt metódusa. Absztrakt osztályt nem lehet példányosítani.  egy absztrakt osztály arra szolgál, hogy Qs osztálya legyen további osztályoknak.  a leszármazott osztályok feladata segítségével. A kivételkezelésben nem az a fontos, hogy mi történt valójában, hanem az, hogy a kivételes esemény révén milyen kivételobjektum került a rendszerbe. A kivétel továbbadása: Az ellenQrzött kivételekkel a metódus hívási lánc minden metódusában foglalkoznunk kell, ezt követeli a kivétel ElQre definiált és saját kivételek: ElQre definiált kivételosztályok: Van egy String paraméterq kon-struktora, amellyel egy leírás definiálható a kivételhez. Számos hasznos metódust definiál, amely öröklQdik, és szükség esetén felüldefiniálható.  String toString(): visszaad egy sztringet, amely az Minden objektum egy jól meghatározott osztályhoz tartozik. Az osztályban definiáljuk az objektum adatait, és az objektum által elvégzendQ mqveleteket (metódusokat). A metódus tulajdonképpen rutin (eljárás, függvény), mely az adott objektum adatain dolgozik. Az üzenet nem más, mint egy rutin A metódus olyan rutin, amely az objektum adatain dolgozik. Az objektumot a feladatokra üzenetek által lehet megkérni. Egy üzenet hatására végrehajtásra kerül az objektumnak egy, az üzenettel azonos nevq metódusa, s ezáltal az objektum adatai megváltozhatnak. Az osztály objektumok létrehozá- amelynek formális paraméterezése: -megfelel a hívásnak, vagyis ahol az összes aktuális paraméter értékadás szerint kompatibilis a megfelelQ formális paraméterrel; és azok közül is amelyik -legközelebb áll az aktuális paraméterekhez. Osztályváltozó és osztálymetódus: Az osztályváltozó (class variable) az osztály saját változója, az egyes példányokban nem szerepel. A statikus adattag az osztály valamennyi objektuma számára egy példányban létezik, azok osztottan használják. Miután az osztály egészére vonatkoznak, szokás az absztrakt metódusok felüldefiniálása. –absztrakt osztály gyermeke lehet absztrakt, ha nem minden absztrakt metódust valósít meg. –absztrakt osztály is használható referencia statikus típusaként. Absztrakt metódusok szerepe: -rögzít egy tervezési döntést.  kényszeríti a leszármazott osztály kezelés mechanizmusa. Két lehetQségünk van: -a metódusban kezeljük a kivételt.  a kivételt továbbadjuk a hívó metódusnak. közöljük a rendszerrel, hogy ebben a metódusban ezt a kivételt nem akarjuk kezelni. Ha a programozó egy metódusban nem akar kezelni némely ellenQrzött kivételt, akkor osztály azonosítójából és a kon-struktorban megadott sztringbQl áll.  String getMessage(): visszaadja a konstruktorban megadott sztringet. –printStack(): kiírja a keletkezett kivételeket, keletkezésük sorrendjében és magadja a keletkezésük helyét. Hasznos lehet a hibakereséshez. Paraméter nélkül hívása. Az objektumot létre kell hozni, majd azonnal inicializálni kell!. Be kell állítani kezdeti adatait és végre kell hajtani azokat a tevékenységeket, amelyek az objektum mqködéséhez feltétlenül szükségesek. Az inicializálást végzQ metódust konstruktornak nevezzük. A példányonként helyet fog- sához használható mintaként tekinthetQ. A Java prgban az osztálynév típusként használható. Az objektum létrehozásának folyamata a példányosítás. Egy osztályból tetszQleges számú objektum példányosítható. A legegyszerqbb mód egy osztály típusú változó definiálása. Formája: [módosítók] Konsutruktor fogalma, definíciójának és használatának szabályai: A konstruktor beállítja az objektum kezdeti állapotát. A konstruktor neve megegyezik az osztály nevével. Egy osztálynak több konstruktora is lehetséges. Az objektum egész élete során a new után megadott osztályhoz fog osztályváltozóknak is nevezni. Nem a this pszeudó változó segítségével történik az elérése. Az objektumok elQtt kell létrejönnie. Inicializálása az osztály inicializálása során történik. A JVM akkor inicializál egy osztályt, amikor elQször történik rá aktív hivatkozás. Az osztályon belül a nevével programozóját meghatározott metódusok definiálására. hibalehetQségek: -törzs nélküli metódus, abstract minQsítQ nélkül.  absztrakt metódust tartalmazó osztály abstract minQsítQ nélkül.  a fordítóprogram figyeli az ilyen hibákat. Java kódban az absztrakt osztály és az absztrakt metódus elé a metódusfej végére be kell tennie a következQt: throws . A throws kulcsszó után több kivételosztály is felsorolható. A továbbadás az összes felsorolt osztályra és azok utódaira vonatkozik. A throws Exception minden kivételt továbbad. Ha egy metódus nem standard hibacsatornára ír, de paraméterben megadható, hogy hová írjon. Saját kivételosztályok: Az Exception leszármazottja legyen. Név konvenció! (Valami Exception) A konstruktorának a paraméterei között legyen egy String, amivel az Qsosztály kon-struktorát hívja meg. A további laló változók a példányváltozók, más néven példányadatok. Az osztálynak azokat a metódusait, amelyek példányokon dolgoznak, példánymetódusnak nevezzük. Az objektumokat üzeneteken keresztül kérjük meg a különbözQ feladatok elvégzésére. Az üzenet nem más, mint egy az objektumba be- osztálynév azonosító= new osztálynév ([paraméterek]). A () zárójelpár a paraméterek hiányában is kötelezQ. A folyamat: -lefoglalódik az objektumnak szükséges hely; -inicializálódik az objektum; -a lefoglalt memóriaterületre való hivatkozás kerül a változóba. tartozni, osztályát megváltoztatni nem lehet. Amikor egy objektumot a new operátorral létrehozunk, akkor azt inicializálni kell. A konstruktor elsQdleges feladata az objektum kezdeti állapotának beállítása, felépítése. Általános szintakszisa: () (({ … abstract (paraméterek); … }
Java interface fogalma, definíció szintaktikája, implementálása: Az interface konstansokat és metódusfejeket definiál. A metódusfejeket az implementáló osztály kezel egy hozzáérkezett ellenQrzött kivételt, akkor a metódusfej throws záradékában meg kell adnia kivételosztályát, vagy annak egy Qsét, különben fordítási hiba keletkezik. A kivételeket a hívási láncon felfelé minden metódusnak tovább kell adnia egészen addig, amíg vmelyik végül nem kezeli. paraméterek a hibára jellemzQ adatokat fogadhatnak. A metódusai a catch blokkban használhatók a kivétel lekezelése során. A kivételek csoportosítására célszerq leszármazási hierarchiát létrehozni a saját kivételosztályok között is.
EllenQrzött és nem ellenQrzött kivétel, kivételek specifikálása: programozott rutin hívása. Egy objektum csak akkor küldhet üzenetet egy másik objektumnak, ha azzal kapcsolatban áll, vagyis ismeri vagy tartalmazza ezt a másik objektumot. Bezárás, információ elrejtése: A feladatok elvégzésének „hogyan”-ja az objektum belügye. Az objektummal csak az Hivatkozás típusú változó (referencia) fogalma…: Osztály típusú változó mindig hivatkozás, nem objektum! Hivatkozás típusú változó: -érték cím, amely egy objektumot címez meg vagy null; -használata índirekció nélkül magát az objektumot jelenti a kifejezésekben; -az értéke (a cím) lista>)) { } A konstruktor hasonlít a metódushoz, a következQ szabályok érvényesek rá: -a konstruktor neve kötelezQen megegyezik az osztály nevével.  csak a new operátorral hívható. Konstruktorral nem lehet újra inicializálni egy objektumot.  a módosítók közül csak a hozzá- végzi. Az osztálymetódus (class method) az osztály saját metódusa, amely csak osztályváltozókon dolgozik. Egy osztályt csak osztálymetódussal lehet megszólítani, egy objektumot meg lehet szólítani példánymetódussal és osztálymetódussal egyaránt. A metódus is kaphat static minQsítést: osztály- fogja implementálni, megvalósítani. Deklarációja: [public] interface [extends ]{ } Szabályok: 89z{±²ÒÓ 5 6 ? @ ^ _ z ½ ¾ F
H
J
r
ˆ
Š
š

÷ðäÖäðÍðÍðÍðÍðü³¼¬£˜£‘ˆ‘wof[foh˜g>*CJ
NHaJ
h˜g>*CJ
aJ
h˜gCJ
aJ
hÛ­hâ&{CJ

h)P©CJ
\hÛ­CJ
NH\
hÛ­CJ
\ hÛ­5CJ
NH\hÛ­5CJ

h 3æCJ
\hâ&{CJ
NH\
hâ&{CJ
\häh 3æCJ
\häCJ
NH\hähä>*CJ
NH\hähä>*CJ

häCJ
\hä5CJ
\ @ J


# 5ê¡¢óóóóóóççç

$$Ifa$gd€\›

$$Ifa$gdä *þ

œ
ž
ž



" # H W a b ¡ ¾ ¿ Ü Ý þ ÿ -#45—Ÿ ±èêQ ¡öîöîãÜÒ˿˶˶˶˶˶˶˭£œ“ˆ“œœung]h`S¯h\lpCJ

hç-CJ

hâzpCJ
\h¤L*hvºCJ
\h¤L*CJ
NH\ h¤L*>*CJ
NH\h¤L*>*CJ

h¤L*CJ
\h¶`®h 3æCJ
\h¶`®>*CJ
\h¶`®CJ
NH\h¶`®h¶`®>*CJ

h¶`®CJ
\h´|h 3æCJ

h&ºCJ
\ h˜ghßDÿCJ
aJ
h˜gCJ
aJ
h˜gCJ
NHaJ
#¢£”

$$Ifa$gdäßkd$$IfÖ ” ûÖ´ûÿ…
™#­7!Á&K,ŠŠŠŠŠŠŠŠÖ0ÿÿÿÿÿÿ öP,ööÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿaö¡£¦®

L N &jz’”FHŠŒòBNPސÌÎ
"d÷ñêñâñâñÚñÔÍÔĽ´½´½¨½´½´½ž•Š•vmdYhM CJ
NH\aJ
hM CJ
\aJ
hùjvCJ
\aJ
hùjv5CJ
\aJ
h 3æCJ
\aJ
h˜gCJ
NH\aJ
h˜gCJ
\aJ
hP¬h 3æCJ
\h)P©h)P©6CJ
\h)P©CJ
NH\
h)P©CJ
\hôùh 3æCJ

hôù>*CJ

hôùCJ
häCJ
NHz häCJ
NH
hä>*CJ

häCJ
h 3æ5CJ
\"”Î"à\’ t"u"óóóóóççç

$$Ifa$gd€\›

$$Ifa$gdä\^Þà L


T’”ÖØ ”–Z\˜šÆ--V-X- L N j öëößÖËÖĻı¨¡˜¡˜¡˜¡˜¡Ž…z…sjsjsaVa h¤L*6CJ
NH\h¤L*6CJ
\h¤L*CJ
NH\
h¤L*CJ
\ h¤L*>*CJ
NH\h¤L*>*CJ
\h¶`®h 3æCJ
\h¶`®CJ
NH\
h¶`®CJ
\h¶`®5CJ
\h&ºh 3æCJ
\h&ºCJ
NH\
h&ºCJ
\ h&º5CJ
NH\h&º5CJ
\hùjvhùjvCJ
\aJ
hM CJ
NH\aJ
hM CJ
\aJ
!j  ’ !!7"E"s"t"v"–"—"ù"ú"î$ð$
%0%2%p%r%|%’%¬%®%Ø%.&0&p&r&Ð&æ&ú&ü&'@'B'øîçÞçÕç˼´¼´¼´¼­¤”‹q””h]h” h)P©6CJ
NH\h)P©6CJ
\h)P©h)P©6CJ
NH\h)P©h)P©6CJ
\h)P©>*CJ
\h)P©CJ
NH\
h)P©CJ
\hôùh 3æCJ

hôù>*CJ
hôùCJ
NH
hôùCJ
h 3æ5CJ
\hç-h 3æCJ
\hç->*CJ
\hç-CJ
NH\
hç-CJ
\h¤L*hvºCJ

h¤L*CJ
\$u"v"2%

$$Ifa$gdäßkd´$$IfÖ ” ûÖ´ûÿ…
™#­7!Á&K,ŠŠŠŠŠŠŠŠÖ0ÿÿÿÿÿÿ öP,ööÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿaöB'„'†'À'Â'þ'( ((-(%(&(D(E(Ì(Í(
)*:*<*€*´*ö*ø*8+:+t+v+¶+¸+À,â,¢-..¢.¤.à.â./ /øîåÚåÚåÑÆåÚåÚ庳ª³ª³¡³ª³ª³ª³—‡€vofofofh¤L*CJ
NH\
h¤L*CJ
\h¶`®h 3æCJ

hûOUCJ
\h¶`®>*CJ

h¶`®CJ
\h&ºh 3æCJ
\h&º>*CJ
\h&ºCJ
NH\
h&ºCJ
\hM hM CJ
\aJ
hM 5CJ
\aJ
h 3æCJ
\aJ
hM CJ
NH\aJ
hM CJ
\aJ
h)P©h 3æCJ

h)P©CJ
\(2%†'(Í(¸+.l0>2@2óóóóóççç

$$Ifa$gd€\›

$$Ifa$gdä /b/d/¤/¦/À/(0*0j0l0¨0ª0º1¼12242<2>2B2Ä2Æ233~3€33ž3¾3À3ú3ü3 4,4:4<4j4l4ì4î4®6°67øïøïøèßèÕÎÅÎÅÎÅ벬¤¬¤¬¤¬¬¤¬¤¬¬¤¬”„zqhM CJ
\aJ
hP¬h 3æCJ
\h)P©CJ
NH\
h)P©CJ
\hôùh 3æCJ

hôù>*CJ
hôùCJ
NH
hôùCJ
h 3æ5CJ
\h`S¯h 3æCJ
\hç-CJ
NH\
hç-CJ
\hvºh 3æCJ
\h

‹CJ
NH\


‹CJ
\h¤L*CJ
NH\
h¤L*CJ
\)@2B2l4

$$Ifa$gdäßkdh$$IfÖ ” ûÖ´ûÿ…
™#­7!Á&K,ŠŠŠŠŠŠŠŠÖ0ÿÿÿÿÿÿ öP,ööÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿaöl4°6ø8Ä:8=Œ?âAäAóóóóççç

$$Ifa$gd€\›

$$Ifa$gdä 77h7j7l7’7l8n8ö8ø89f9n9p9Â:Ä:ž; ;<<¤<¦<6=8=ü=þ=:><>~>ª>¾>À>@?B?Š?Œ?Ò?ôëàÓàëôëÇÀ·À®À¤”””Šƒzƒzƒqƒzƒzƒg^hÓæ5CJ
\h

‹h 3æCJ
\h

‹>*CJ
\h

‹CJ
NH\


‹CJ
\hÎj7h 3æCJ
\hûOUCJ
NH\
hûOUCJ
\h&ºh 3æCJ
\h&ºCJ
NH\h&º6CJ

h&ºCJ
\hM h 3æCJ
\aJ
hM >*CJ
NH\aJ
hM >*CJ
\aJ
hM CJ
\aJ
hM CJ
NH\aJ
$Ò?Ô?@f@˜@š@ZA\AzAœAàAâAæAB BìBîB4CBC,D.D2D@D¬D®D"ErEtE°E²EtFvF°F²F'H(H3HøïøèßèßèÖèÌýµ½µ½®½¥ž•žŒž…|…|…ri^i^ihM CJ
NH\aJ
hM CJ
\aJ
h)P©h 3æCJ
\h?_™CJ
NH\
h?_™CJ
\h)P©CJ
NH\h)P©>*CJ

h)P©CJ
\hôùh 3æCJ

hôù>*CJ
hôùCJ
NH
hôùCJ
h 3æ5CJ
\h¶­h 3æCJ
\h¶­6CJ
\h¶­CJ
NH\
h¶­CJ
\hÓæ>*CJ

hÓæCJ
\$äAæA.D

$$Ifa$gdäßkd$$IfÖ ” ûÖ´ûÿ…
™#­7!Á&K,ŠŠŠŠŠŠŠŠÖ0ÿÿÿÿÿÿ öP,ööÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿaö.DvF4HVI KVMÔNÕNóóóóççç

$$Ifa$gd€\›

$$Ifa$gdä 3H4HPHQHUHYHgH³H´HI I3I4IUIVIuIvI•I–IµI¶IöI÷I8JpJK KNKPKŠKŒKÌKÎK
L

LTMVMâMN
N

NóêßêØÏØÆØÆØÆØ¼µ¬µ¬µ¬µ¬µ£µ™’‰’‰’‰’‰’xoxfh¶­CJ
NH\h¶­6CJ

h¶­CJ
\hvºh 3æCJ
\h

‹CJ
NH\


‹CJ
\hûOUh 3æCJ
\hûOU>*CJ
\hûOUCJ
NH\
hûOUCJ
\h)P®h 3æCJ
\h)P®CJ
NH\h)P®>*CJ

h)P®CJ
\ h)P®5CJ
NH\h)P®5CJ
\hM h 3æCJ
\aJ
(

N7NCNoNpNNNÓNÔNÖNÞNáNþN
OO=O>OaObO€OP>P@P”P°PºP¼PüPþP8Q:QtQvQöQøQRRxRzR S6S8SrSøïøæøæøÜÓÌżżųųųųżųũ¢™¢™¢™¢¢™¢‡{p hUh5CJ
\aJ
h?_™h 3æ6CJ
\h?_™6CJ
\h?_™>*CJ
\h?_™CJ
NH\
h?_™CJ
\h¹/qh 3æCJ
\h¹/qCJ
NH\h¹/q>*CJ

h¹/qCJ

hôùCJ
\h 3æ5CJ
\h¶­h 3æCJ
\h¶­CJ
NH\h¶­6CJ

h¶­CJ
\*ÕNÖNþP

$$Ifa$gdäßkdÐ$$IfÖ ” ûÖ´ûÿ…
™#­7!Á&K,ŠŠŠŠŠŠŠŠÖ0ÿÿÿÿÿÿ öP,ööÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿaöþP8S¸T–WþYD\v^x^óóóóççç

$$Ifa$gd€\›

$$Ifa$gdä rStS¬S®S¸SºSòSôS·T¸TöT÷TUVˆVŠVNWPW”W–WÐWÒWXX X XüYþY`Z‚Z„Z¸Z[óèóèßÖËÖ¿¸¯¸¯¸¯¸¯¸¥ž•žŒŒžwpg\gU
h¥ˆCJ
\ h

‹6CJ
NH\h

‹6CJ



‹CJ
\hûOUh 3æCJ
\ hûOU>*CJ
NH\hûOU>*CJ
\hûOUCJ
NH\
hûOUCJ
\h´|h— óCJ
\h)P®CJ
NH\
h)P®CJ
\hUhh 3æCJ
\aJ
hå ZCJ
NH\aJ
hå ZCJ
\aJ
hUhCJ
\aJ
hUh5CJ
\aJ
hUh5CJ
NH\aJ
[[B[D[B\D\„\†\Ô\à\]t^v^z^š^¸^ø^ú^8_:_r_v_x_”_Ê_Ö_ê_ì_,`.`ª`¬`ä`æ` a(aöïöïåÞÕÞÌü²©¢™¢¢¢™…™¢™¢¢¢{rgr`
h?_™CJ
\ h?_™6CJ
NH\h?_™6CJ
\h¹/qh 3æCJ
\ h¹/q>*CJ
NH\h¹/qCJ
NH\h¹/q>*CJ

h¹/qCJ
\h 3æ5CJ
\hSih 3æCJ

hSiCJ
\hSi>*CJ
\hûU
>*CJ
\h¶­CJ
NH\
h¶­CJ
\h¥ˆh 3æCJ

h¥ˆCJ
\h¥ˆCJ
NH\#x^z^¬`

$$Ifa$gdäßkd„$$IfÖ ” ûÖ´ûÿ…
™#­7!Á&K,ŠŠŠŠŠŠŠŠÖ0ÿÿÿÿÿÿ öP,ööÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿaö(a*a‚b„bÈbÊbØbÚb¢c¤cfdhddªd¬d¾dÀdêdìd*e,eèeêe8f9fXfYfvfwfºf»fØfõföfgggöïöïöïåÜÑÜÑÜÆ¹ÆÜ®¡®“ŒƒŒƒŒƒŒƒŒyri^i^i hûOU6CJ
NH\hûOU6CJ

hûOUCJ
\h´|h 3æCJ
\h)P®CJ
NH\
h)P®CJ
\hå Zh 3æ6CJ
\aJ
hå Z6CJ
NH\aJ
hå Z6CJ
\aJ
hå Z>*CJ
NH\aJ
hå Z>*CJ
\aJ
hå ZCJ
NH\aJ
hå ZCJ
\aJ
h?_™h 3æCJ

h?_™CJ
\h?_™CJ
NH\$¬`Úb,e»f,gÍgLjlžl lóóóóóçççç

$$Ifa$gd€\›

$$Ifa$gdä g+g,glg‹gŒg«g¬gÌgh¼h¾hJjLjŒjŽj kk–k˜kÚkÜkllœlžl¢lmmžm mümn1n2nPnQnnn÷ðçà×à×àÍÆ½Æ³¬£¬£¬£¬£¬œ“‰€ypypygypypyh¹/q>*CJ
\h¹/qCJ
NH\
h¹/qCJ
\h 3æ5CJ
\hSihSiCJ
\hSi5CJ

h 3æCJ
\hSiCJ
NH\
hSiCJ
\hvºh 3æCJ
\h¥ˆCJ
NH\
h¥ˆCJ
\h.:Ýhj´CJ
\h.:ÝCJ
NH\
h.:ÝCJ
\h.:Ý5CJ

hixdCJ
\hj´6CJ
\% l¢lon

$$Ifa$gdäßkd8$$IfÖ ” ûÖ´ûÿ…
™#­7!Á&K,ŠŠŠŠŠŠŠŠÖ0ÿÿÿÿÿÿ öP,ööÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿÖ ÿÿÿÿÿÿÿÿaönnonnŽnŸnìnín
o oRoSotouo’o“o´oÔop

p~p€pÌqÎqÜqâqþq’r”rÒrÔr’s”sttXtõìáìÚÑÚÑÚÑÚÑÚǼ³¨³¨³¨³œ“ŠŠtŠtŠtŠha
h.:ÝCJ
\hB(hH;CJ
\aJ
hB(CJ
NH\aJ
hB(>*CJ
\aJ
hB(CJ
\aJ
h)P®CJ
\aJ
hå ZhH;CJ
\aJ
hå ZCJ
NH\aJ
hå ZCJ
\aJ
hå Z6CJ
\aJ
hbhH;CJ
\hbCJ
NH\
hbCJ
\ hb5CJ
NH\hb5CJ
\h¹/qhH;CJ
\#on“oÎqt,¹ä¹^»®½°½óóóóçççç

$$Ifa$gd€\›

$$Ifa$gdäXtZtbt|t~tu u:u hÅáCJ
\ hSi>*CJ
NH\hSi>*CJ
\hSiCJ
NH\
hSiCJ
\hD$Th¥ˆ6CJ
\hD$T6CJ
\hD$TCJ
NH\
hD$TCJ
\hD$T5CJ

hvCsCJ
\h¥ˆCJ
NH\
h¥ˆCJ
\h.:ÝhH;CJ
\U h.:Ý6CJ
NH\h.:Ý6CJ
\h.:Ý>*CJ

h.:ÝCJ
\h.:ÝCJ
NH\ -interface alapértelmezésben ab-stractm az interfacebQl nem lehet példányt létrehozni.  az interfacek egyetlen módosítója adható meg, Minden kivételrQl nyilatkozni kell, ezért a kivételosztályok továbbadáskor nem szqkíthetQk!
Kivétel elkapása, kezelése. Finally blokk szerepe: A kivételek elkaphatók és kezelhetQk, erre a try-catch-finally szerkezetet használjuk. Az általános forma a következQ: try{ } A kivételek logikailag két csoportra oszthatók: -Nem ellenQrzött kivételek: ezek a futási hibák, vagyis a RuntimeException és annak leszármazottai. A nem ellenQrzött kivételeket a programozó nem köteles kezelni. Az Error és a Run-timeException osztályból származó kivételek: -Error: rendszerhiba interfészen keresztül lehet kommunikálni. A polimorfizmus azt jelenti, hogy ugyanarra az üzenetre különbözQ típusú objektumok különbözQképpen reagálnak  minden objektum a maga (az üzenetnek megfelelQ) metódusa szerint. ÖröklQdés, más néven kiterjesztés: Egy már meglévQ osztály kiter- a programozó számára hozzáférhetetlen. Következmény: objektum csak futása közben, dinamikusan (a new operátor használatával) hozható létre. Hivatkozással végezhetQ mqveletek: -definíció; -értékének beállítása objektum létrehozásával; -értékadás hivatkozások között; -értékének beállítása férési módosítók használhatók.  a konstruktor túlterhelhetQ.  a konstruktornak nincs visszatérési értéke, és nem is void.  konsturktor nem öröklQdik. A konstruktor feladata, hogy inicializálja az objektum adatait, kapcsolatait és megtegye a mqködéséhez kezdeti lépéseket. A konstruk- metódus. Az ilyen metódus példányváltozókhoz és a this pszeudó változóhoz nem férhet hozzá. Következmény: csak osztályváltozókat és más osztálymetódusokat használhat. Akkor is végrehajtható, ha az osztálynak nem léteznek példányai. Hivatkozás: -osztályon belül a nevével, -minQsített hivat- a public, ha nem adjuk meg, akkor csomagszintq a láthatósága.  a konstansok módosítói alapértelmezésben public, static és final, akár deklaráljuk Qket akár nem.  a metódusfejek módosítói alapértelmezésben public és abstract, akár deklaráljuk Qket akár nem. Az interface metódusai példánymetó- catch( ){ } & catchN ( ){ } finally { } Pontosan egy try blokk van, nulla vagy több catch blokk ls legfeljebb egy finally blokk. Egy catch vagy finally blokknak azonban mindenképpen lennie kell. a JVM mqködésében.  Runtime-Exception: a program számos pontján keletkezhetnek, ezért nem célszerq kötelezQvé tenni a lekezelésüket. A programozó, ha akarja lekezelheti. Lekezeletlen kivétel esetén a program terminálódik, és kiíródik a kivétel stack.  EllenQrzött kivételek: ide tartozik jesztése, továbbfejlesztése. A már meglévQ osztály az Qsosztály, a kiterjesztett osztály pedig a leszármazott, más szóval származtatott, vagy utódosztály. Az utódosztály az Qsosztály specializálása. Az öröklQdést az osztályok közötti az egy , vagy olyan, mint kapcsolatnak is nevezik. a null konstansra; két hivatkozás összehasonlítása (a == mqvelettel); használható objektum elemére való hivatkozásban. Egyszerq típusú változó: a deklarációja egyben definíció is, hely foglalódik a memóriában és a továbbiakban a változó az ott tárolt értéket képviseli. tor deklarálásának szabályai Java-ban: -az osztály konstruktorának neve megegyezik az osztály nevével.  a konstruktorok egy adott osztályban túlterhelhetQk, vagyis az osztálynak számos különbözQ paraméterezésq konstruktora lehet.  minden osztálynak van saját konstruktora. Ha egy osztályban kozásnál példány vagy az osztály nevével. Egy program indulásakor nincs, ami példányt hozzon létre, ezért a main metódusnak static minQsítésqnek kell lennie.
ÖröklQdés fogalma, statikus és dinamikus típus fogalma: Specializálás: Az a folyamat, amellyel egy dolog leírásához egyedi dusok.  a metódusfejet pontosvesszQvel zárjuk. Interface implementálás: A interface-t implementáló osztályban meg kell írni az interfaceben megadott metódusokat. Az implementáló osztály speciális utódja az implementált interfacenek. Szabályok: -az inter-face-t implementáló osztálynak az A try-catch-finally szerkezet egy metódusban bárhol elhelyezhetQ. A blokkban egymás után több is megadható, vmint része lehet szelekciónak, vagy iterációnak. A try-catch-finally blokkok egymásba ágyazhatók, bár ettQl a program olvashatósága erQsen romlik. Try blokk: A try blokk tartalmazza a minden Exception, kivéve a Run-timeException és annak leszármazottai. Az ellenQrzött kivételeket a programozónak kezelnie kell. Ha nem kezeli akkor a fordító hibát jelez. A metódus nem kezeli le a kivételt, de specifikálja azt a fejlécében. A metódus futása befejezQdik. Ez akkor szükséges, amikor A Java prg, a Java applet és a JavaScript fogalma: Java: Tiszta oo nyelv. A SunMicroSystems egy csoportja a JavaSoft fejlesztette ki James Gosling vezetésével. A Java a C++ átdolgozott leegyszerqsített változata; az a legnagyobb erQssége, hogy alkalmas az Internet programozására. A fejlesztQi kör- Osztály típusú változó: deklarációja hatására csak egy cím számára foglalódik memória. Ezt a címet egy példányosított objektum címére kell beállítani. Ezután a változó az általa hivatkozott objektumot fogja képviselni. Hivatkozás objektum elemeire: Osztályon belül: névvel. Minden más esetben az deklarálunk konstruktort, akkor egy alapértelmezés szerinti, paraméter nélküli konstruktor lép érvénybe. Ha van deklarált konstruktor akkor nincs alapértelmezés szerinti.  a konstruktor nem öröklQdik és nem is lehet felülírni. Minden osztály saját konstruktor-ral gondoskodik objektum létreho- jellemzQket adunk hozzá. általánosítás: Az a folyamat, amellyel több dolog leírásából kiemeljük a közös jellemzQket. ÖröklQdés: más néven kiterjesztés: Egy már meglévQ osztály kiterjesztése, továbbfejlesztése. A már meglévQ osztály az Qsosztály, a kiterjesztett osztály pedig a leszármazott, más szóval interfaceben megadott összes metódust implementálnia kell, különben a fordító hibát jelez, kivéve ha az osztály abstract, ekkor az osztály utódjában befejezhetjük az implementálást.  Egy osztálynak legfeljebb egy Qse lehet, de interface-t akárhányat implementálhat. Az implementált interface- program normális logikáját tükrözQ utasításokat. Általában a try blokk futása során keletkeznek a kivételek, amelyeket el kell fogadnunk. A blokk mqködésének esetei: -ha a try blokk normálisan lefut, akkor végrehajtódik a finally blokk, majd az azt követQ utasításokra kerül a vezérlés. az adott metódus nem, csak a hívó tudja értelmesen lekezelni a kivételt. A hívó is tovább adhatja a kivétel lekezelését, így a kivétel tetszQleges hívási mélységbQl is eljuthat oda, ahol lekezelhetQ. Kivétel specifikálása: Ha egy metóduson belül kivétel keletkezhet, de nem tartalmaz catch utasításokat környezet és Java osztálykönyvtár magja a szabványos JDK; ennek alapján több cég is gyárt fordító, ill. futtató programot. Egy böngészQ Java-képes , ha futtatja a Java appleteket. A böngészQtQl függetlenül futó programot alkalmazásnak nevezzük, a böngészQben futó programot, pedig appletnek. objektum nevével minQsítve, pont operátorral. Metódusra való hivatkozásnál aktuális paramétereket is kell adni, és a hivatkozás a metódus aktivizálását jelenti. Az információrejtés alapelvének megvalósítása érdekében a Java korlátozza az objektumok tagjaira való hivatkozást. zásáról. A konstruktor láncolásának szabályai: -osztályon belül az egyik konstruktorból, a másik így hívható: this(paraméterek); -egy konstruktorból a közvetlen Qskon-struktor így hívható: super (paraméterek; -minden konstruktornak tartalmaznia kell pontosan egy this(), vagy super() hívást, azt is származtatott, vagy utódosztály. Az utódosztály az Qsosztály specializálása. Az öröklQdést az osztályok közötti az egy vagy olyan, mint kapcsolatnak nevezik. A Java nyelvben az utódosztály fejében az osztálynév után meg kell adnunk az extends (kiterjeszt) kulcsszót és az Qsosztály nevét: ek összes metódusát meg kell írni!  az implementáló osztály az interface metódusait örökölheti is más osztályból. Interface öröklése: Az interfaceek örökíthetQk. Az utódinterface örökli az Qsinterface deklarációit. Az utódinterface implementálásakor implementálni kell az Qsinterface metódusait is. -ha a try blokkot a return utasítással elhagyjuk, a finally akkor is végrajhtódik, még a metódusból való kiugrás elQtt.  ha a try blokk végrehajtása közben kivétel keletkezik, akkor a vezérlés a kivétel típusától függQen vmely catch blokk végrehajtásával folytatódik. Végül mindenképpen lefut a annak kezelésére. Ilyenkor a metódus hívójának kell azokat lekezelni. Erre számítani kell, ezért az ilyen kivételeket a metódus fejlécében specifikálni kell. Formája: metódusnév([paraméterlista]) [throws kivételosztály1, [kivételosztály2, & ]]. Ez applet biztonsági okok miatt sokkal kevesebb dologra képes, mint egy applikáció: mások gépén pl. egyáltalán nem tudja kezelni az állományokat. Böngészéskor nem kell tehát attól tartani, hogy szmgépünkre letöltött aplet letörli, módosítja, netán elolvassa állományainkat. JavaScript: Eredetilag Hozzáférési kategóriák és jelentésük, konvenciók: Nincs módosító: fél nyilvános: csak az azonos csomagban lévQ osztályok érhetik el. public: nyilvános: bármely csomagban lévQ bármely osztályból elérhetQ. private: más osztályból nem, csak az adott osztály összes példánya számára elérhetQ. legelsQ utasításként. A this tehát kizárja a super-t és viszont. Ha egyik sem szerepel, akkor a fordító betesz egy alapértelmezett paraméter nélküli super() hívást, feltéve, hogy az Qsosztálynak van ilyen konstruktora, ha nincs akkor a fordító hibát jelez. Alaprételmezés szerinti konsturktor: Ha egy osz- classextends & Egyszeres öröklés: Az öröklés egyszeres, ha egy osztálynak csak egy közvetlen Qse lehet. Többszörös öröklés: Az öröklés többszörös, ha egy osztálynak több Qse is lehet. Az öröklés szabályai: -egy osztályból több osztály is származtatható. Értékadási kompatibilitás: Az objektum statikus referenciája inter-face típusú is lehet. Az implementáló osztály objektuma értékül, ill. paraméterül adható az interface típusú statikus referenciának. Az interface típusú referenciákra ugyanazok az értékadási szabályok érvényesek, mint az osztálytípusú finally blokk. catch blokk: Minden catch blokk egy-egy kivételkezelQt definiál. A blokk fejében paraméterként pontosan egy formális kivételobjektum van megadva, az osztálya csak a Throwable utódja lehet. Az aktuálisan érkezQ kivételobjektum értékadás szerint kompatibilis kell hogy legyen LiveScript néven a Netscape-nél kifejlesztett script nyelv. Célja weboldalak dinamikussá tétele. A Java-hoz hasonlóan a C++ szintaktikához hasonló formalizmus, nem objektum orientált, csak objektum alapú (nem implementálja valamennyi alapelvet), bár ezt is böngészQ értelmezi, semmi köze a protecred: védett: az Qt tartalmazó csomagban bárki hivatkozhat rá, más csomagokból csak az utódosztályok. Osztály csak nyilvános vagy fél nyilvános lehet. Adattag és metódus bármelyik kategóriába tartozhat. Az információrejtés alapelvének betartása érdekében minden elem kapja a lehetQ leg- tályban nem adunk meg explicit módon konstruktort, akkor az osztálynak lesz egy alapértelmezés szerinti, paraméter nélküli konstruktora. Ha tehát az osztályban nem adtak meg konstruktort, akkor a példány létrehozásakor a rendszer ezt az alapértelmezés szerinti konstruktort hívja meg. -egy osztályhierarchia mélysége elvileg tetszQleges lehet, de a sok szint könnyen áttekinthetetlenné válik.  az öröklés tranzitív: Ha B örökli A-t és C örökli B-t, akkor C örökli A-t. Szabályok Javaban: -egy osztálynak csak egy közvetlen Qse lehet.  az Object implicit Qse minden osztálynak. referenciákra.
Kivétel fogalma és kivételkezelés utasításai, kivétel keletkezése: A programot leállító események valamennyien objektumok, s osztályuk a Throwable osztályból származik. A dobható események két csoportra oszthatók: -Rendszerhiba (error): a prg nem ezzel a paraméterrel. A blokk kezeli az érkezQ kivételobjektumot, majd a blokk végén az objektum megszqnik. A kivételobjektum manipulálható a blokkban. Legfeljebb egy catch blokk hajtódik végre. A carch blokkokat olyan sorrendben kell megadni, hogy a paraméterek osztálya egyre általáno- 1 cm 28,5 pont magassága

Hasonló témájú dokumentumok
Egyelőre még egyetlen hasonló témájú file sincs feltöltve a rendszerbe
A mások által feltöltött dokumentumokat értékelheted. Ha úgy ítéled meg, hogy a vizsgára való felkészülés szempontjából hasznos volt egy dokumentum, akkor adj rá sokcsillagos értékelést.
Ha hibákat tartalmaz, vagy egyéb probléma van vele, akkor keveset.
A dokumentumok sorrendje az értékelések alapján adódik. Ami fentebb van a listában, azt hasznosabbnak ítélték társaid. Az új dokumentumok pedig (értékelések hiányában) szintén a lista tetején kezdenek.

Hozzászólások

Ha észrevételed van egy dokumentummal kapcsolatban (például hibát találtál benne), akkor a Hozzászólások részben jelezheted. Az olyan jellegű kérdéseket mint pl.: A 2. feladat 4. sorából milyen átalakítással jutottunk az 5. sorban szereplő képlethez? - szintén ide érdemes írni
Egy tipp az oldalhoz! - Naptári bejegyzéseket vehettek fel egy tantárggyal kapcsolatban, vagy az egész szakotok számára. Például:
  • Zh időpontok
  • Gólyabál időpontja
  • Házi leadási határidő
  • Tanítási szünetek
  • stb ...
Kattints a Naptárra, majd a jobb felső részen levő Új naptári bejegyzés felvétele linkre.

Cimkefelhő

2004 4. 4. gyakorlat aggregált kínálat algebra bio biológia civil szervezetek csokonai deklaratív programozás dimat doc épületszerkezetek eupol filozófiatörténet formanyomtatvány gazdasági közjog géptan hatalom hulladékkezelés információs társadalom jogszabályok kant képlékenyalakítás kereskedelem konzultáció könyvtárinformatika környezeti katalízis környezeti számvitel közigazgatástörténet megtakarítás merőpiac mikrobiológai minta montesquieu os petőfi rézsűállékonyság számvitel ii. szociálpolitika tételsor torlódási hely tulajdonjog turizmus szak vér villamos gépek vízép xls vízlágyítás vorlesung zh