java programozÁs - emte.siculorum.ropallaszlo/java/eloadas/3.eloadas.pdf · java programozÁs 3.el...
TRANSCRIPT
![Page 1: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/1.jpg)
JAVA PROGRAMOZÁS3.ELŐADÁS
Dr. Pál László, Sapientia EMTE, Csíkszereda
3.ELŐADÁS
Polimorfizmus, absztrakt osztályok, interfészek2014-2015 tavasz
![Page 2: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/2.jpg)
Példa - Hengerprogram2
![Page 3: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/3.jpg)
Példa - Hengerprogram3
![Page 4: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/4.jpg)
Példa - Hengerprogram4
![Page 5: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/5.jpg)
Az objektumreferencia statikus és dinamikus típusa
5
� Statikus típus: deklarált osztály
� Dinamikus típus: mutatott objektum valódi osztálya
� Fontos, hogy a referencia statikus típusa a dinamikus típussal egyenlő, vagy annak egy őse legyentípussal egyenlő, vagy annak egy őse legyen
![Page 6: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/6.jpg)
Értékadási kompatibilitás6
� Objektumreferenciák értékadása esetén a jobb oldal értékadás szerint kompatibilis a bal oldallal, ha a bal oldali referencia osztálya a jobb oldali referencia osztállyal megegyezik, vagy annak egy őse.őse.
� Példa:Szintaktikailag helyes
Szintaktikailag helytelen
Hiba futáskor
![Page 7: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/7.jpg)
Az istanceof operátor7
� Segítségével lekérdezhető a hivatkozott objektum osztálya:<objektum> instanceof <Osztaly>
� Az eredmény egy logikai érték: true, ha az objektum osztálya a megadott vagy annak egy osztálya a megadott Osztaly vagy annak egy leszármazottja, különben false
� Példa:
Object obj = new String("Valami");
if (obj instanceof Object) ... // true
if (obj instanceof String) ... // true
if (obj instanceof Integer) ... // false
if ("Semmi" instanceof String) ... // true
![Page 8: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/8.jpg)
Az istanceof operátor8
� Példa:
![Page 9: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/9.jpg)
Típuskonverzió9
� Felfelé (upcasting)� Utód típusú referencia értékül adható egy ős típusú
referenciának
� Ebben az esetben az utód referencia ős típusúvá konvertálódikkonvertálódik
� Példa:String str = "Kakukk";
System.out.println(str.toLowerCase());// OK
Object obj = str; // String�Object
//System.out.println(obj.toLowerCase()); Fordítási hiba!
hengerek.add(new Rud(0.5,4));
hengerek.add(new Cso(5,5,0.5));
![Page 10: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/10.jpg)
Típuskonverzió10
� Lefelé (downcasting)
� Ős típusú referencia nem adható egyszerűen értékül egy utód típusú referenciának csak rákényszerítéssel
� Ebben az esetben csak olyan üzenet küldhető, amely benne van az objektum valódi osztályában
� Példa:
![Page 11: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/11.jpg)
Típuskonverzió11
� Példa:
� A konténerből kikért objektum le van butítva
� Ha nem kényszerítjük rá a Henger-t, nem kérdezhetnénk meg tőle a térfogatát
![Page 12: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/12.jpg)
Adatok takarása (árnyékolás)12
� Adatot nem lehet felülírni!
� Adat takarása = ugyanolyan nevű másik adat deklarálása
� Példa:
![Page 13: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/13.jpg)
Metódus felülírása, dinamikus és statikus kötés
13
� Példánymetódus felülírása (overriding)� Egy metódus az utódosztályban felülírható, ha az:
� nem private
� nem final
� nem static (példánymetódus)� nem static (példánymetódus)
� Dinamikus kötés:� Az ostzályhierarchia bármely pontjáról is hívunk meg
egy példánymetódust, minden esetben a megszólított objektum osztályában fog végrehajtódni
� Ez csak futáskor derülhet ki, a pontos címet futáskor határozza meg a rendszer -> futás alatti kötés vagy kései kötés (late binding)
![Page 14: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/14.jpg)
Példánymetódus dinamikus kötése14
![Page 15: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/15.jpg)
Példánymetódus dinamikus kötése15
![Page 16: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/16.jpg)
Osztálymetódus statikus kötése16
� A fordító egyértelműen el tudja dönteni melyik osztály metódusát hajtsa végre
� A statikus metódust már a fordító megkeresi és a kódhoz kötikódhoz köti
� Példa:
![Page 17: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/17.jpg)
Osztálymetódus statikus kötése17
![Page 18: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/18.jpg)
Polimorfizmus18
� Polimorfizmus (polymorphism, többalakúság)
� Azt jelenti, hogy ugyanarra az üzenetre különböző típusú objektumok különbözőképpen reagálnak –minden objektum a saját metódusával
� Példa:
![Page 19: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/19.jpg)
Polimorfizmus19
� Példa:
![Page 20: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/20.jpg)
Absztrakt metódus, osztály20
� Absztrakt metódus: üres metódus, mely csak örökítési célt szolgál
� Absztrakt osztály: absztrakt metódust tartalmazó, nem példányosítható osztály
� Jelölés� Jelölés� UML: dőlt betűvel
� Java:
abstract class <OsztályAzonosító> {…abstract
<metódusAz>(paraméterek);…
}
![Page 21: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/21.jpg)
Absztrakt metódus, osztály21
� Szabályok Javában:
� Absztrakt metódusnak nincs blokkja
� Absztrakt osztályban akárhány absztrakt metódus lehet
� Absztrakt metódust tartalmazó osztály csak absztrakt � Absztrakt metódust tartalmazó osztály csak absztrakt lehet
� Ha az utódosztály nem absztrakt, akkor abban minden absztrakt metódust implementálni kell
� Absztrakt osztályból nem lehet példányt létrehozni
� Absztrakt osztály, illetve metódus nem lehet végleges
![Page 22: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/22.jpg)
Absztrakt metódus, osztály22
� Példa:
![Page 23: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/23.jpg)
Absztrakt metódus, osztály23
� Példa:
![Page 24: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/24.jpg)
Absztrakt metódus, osztály24
� Példa:
![Page 25: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/25.jpg)
Interfészek25
� Konstansokat és metódusfejeket definiál
� Implementáló osztály: a metódusokat implementálja
� Deklarációja:[public] interface <InterfészAzon> [public] interface <InterfészAzon>
[extends <InterfészAzon,...>] {
<konstansok, metódusfejek>
}
� Egy osztály több interfészt is megvalósíthat
� Egy interfészt több osztály is megvalósíthat
![Page 26: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/26.jpg)
Interfész implementálása26
� Az interfészben minden tag implicit publikus, így az interfészt megvalósító osztályban mindig ki kell tenni a public módosítót
![Page 27: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/27.jpg)
Interfész implementálása27
� Interfészekben definiálhatunk mezőket is, ezek publicstatic final típusú konstansak
� Az objektum statikus referenciája lehet interfész típusú
![Page 28: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/28.jpg)
Interfész implementálása28
� Implementáló osztály: speciális utódja az interfésznek
� Nem abstract osztály � összes metódust meg kell írniAbstract osztály � az utódban befejezhető az implementálás
Egy osztály akárhány interfészt implementálhat� Egy osztály akárhány interfészt implementálhat
� Az interfész egyes metódusait az implementáló osztály örökölheti is
![Page 29: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/29.jpg)
Interfész - Példa29
![Page 30: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/30.jpg)
Interfész - Példa30
![Page 31: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/31.jpg)
Interfész - Példa31
![Page 32: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/32.jpg)
Interfész - Példa32
![Page 33: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/33.jpg)
Interfész - Példa33
![Page 34: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/34.jpg)
Interfész - Példa34
![Page 35: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/35.jpg)
Belső osztály35
� Osztályon belül deklarált másik osztály:class <KulsoOsztályAzon> ... {
...
class <BelsoOsztályAzon> ... {
......
}
}
� Csak az őt deklaráló külső osztály ismeri
� Példányosítás: külső osztály példánymetódusából
![Page 36: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/36.jpg)
Szabályok36
� Példánya ismeri az őt létrehozó külső objektumot
� implicit referencia
� hivatkozás takarásnál: KülsıOsztály.this
� Nem lehetnek statikus deklarációi� Nem lehetnek statikus deklarációi
� Nem kötelező azonosítani (névtelen belső osztály)
� Fordítóprogram különálló külső osztállyá alakítja: KülsıOsztályAzon$BelsıOsztályAzon.class
KülsıOsztályAzon$n.class
(n=1,2,…)
![Page 37: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/37.jpg)
Belső osztály - Példa37
![Page 38: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/38.jpg)
Névtelen osztály38
� Nincs neve � Máshol nem lehet rá hivatkozni �� Egyszer példányosítható
� Az objektum létrehozásával egyidőben deklaráljuk
� Névtelen osztályú objektum létrehozása� Osztály kiterjesztésével
� Interfész implementálásával
� Nincs konstruktora
� Deklaráció:New <ososztaly>(parameterlista){
névtelen osztály blokkja
}
![Page 39: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/39.jpg)
Példányosítás osztály kiterjesztéssel39
� Nincs neve � Máshol nem lehet rá hivatkozni �� Egyszer példányosítható
� Az objektum létrehozásával egyidőben deklaráljuk
� Névtelen osztályú objektum létrehozása� Névtelen osztályú objektum létrehozása
� Osztály kiterjesztésével
� Interfész implementálásával
� Nincs konstruktora
![Page 40: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/40.jpg)
Példányosítás osztály kiterjesztéssel40
� Példa:
� Mi a kimenet?
![Page 41: JAVA PROGRAMOZÁS - emte.siculorum.ropallaszlo/java/eloadas/3.Eloadas.pdf · JAVA PROGRAMOZÁS 3.EL ŐAD ÁS Dr. PálLászló, SapientiaEMTE, Csíkszereda 2014-2015 Polimorfizmus,](https://reader033.vdocuments.net/reader033/viewer/2022042507/5a78be647f8b9aa17b8be5bf/html5/thumbnails/41.jpg)
Könyvészet41
� Angster Erzsébet, Objektumorientált tervezés és programozás. Java I-II. (Bazele programării orientate pe obiecte), Ed. 4 Kör Bt., Budapesta, 2002.
� Kathy Sierra, Bert Bates: Agyhullám: Java, Kiskapú, 2011.2011.