JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam

Slides:



Advertisements
Hasonló előadás
4. alkalom – Hálózat Kezelés
Advertisements

Osztály leszármaztatás
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
AZ OOP ALAPJAI.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
Adatbányászati technikák (VISZM185)
Öröklődés 2..
© Kozsik Tamás Beágyazott osztályok A blokkstrukturáltság támogatása –Eddig: egymásba ágyazható blokk utasítások Osztálydefiníciók is egymásba.
Programozás alapjai.
Csala Péter ANDN #4. 2 Tartalom  C# - ban előre definiált típusok  Változók  Változókkal műveletek  Elágazás  Ciklus.
Öröklődés Polimorfizmus Csomagok Absztrakt osztályok, interfészek
Fájlkezelés, IO Kivételkezelés Belső osztályok
Osztályok Garbage collection.  általában minden osztálynak vannak adattagjai és/vagy metódusai ◦ adattagok megadása:  [láthatóság] [static] [final]
Abstract osztályok és interface-ek Beolvasás és kiíratás 7. gyakorlat.
Programozás II. 3. Gyakorlat C++ alapok.
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás II. 6. Gyakorlat const, static, dinamikus 2D.
Tömbök ismétlés Osztályok Java-ban Garbage collection
Az objektum-orientált tervezési alapelvek kritikai vizsgálata
A Java programozási nyelvSoós Sándor 1/17 Java programozási nyelv 4. rész – Osztályok II. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai.
Java programozási nyelv 3. rész – Osztályok I.
Java programozási nyelv 5. rész – Osztályok III.
C# tagfüggvények.
C# osztályok Krizsán Zoltán 1.0.
C# tagfüggvények.
Annotációk a Java 5 nyelvben Kozsik Tamás. Annotációk Módosítószavak bővítése A programszöveg elemeihez rendelhetők –Csomagokhoz, típusokhoz, metódusokhoz,
© Kozsik Tamás Kivételek A program végrehajtása során ritkán bekövetkező események Nem a „fő végrehajtási ág”; logikailag alacsonyabbrendű feladat.
Kivételkezelés.
Kivételkezelés a C++ nyelvben Bevezetés
Szoftvertechnológia alapjai Java előadások Förhécz András, doktorandusz tárgy honlap:
1 Szoftvertechnológia alapjai Java előadások Förhécz András, doktorandusz tárgy honlap:
1. Gyakorlat - Alapok 1. Írjon konzolprogramot, amely kiírja a “Hello ELTE” üzenetet! Használja a System.out.println() -t! 2. Írjon konzolprogramot, amely.
Léczfalvy Ádám MIDlet-ek.
A PHP 5 újdonságai Az OOP terén. Miről lesz szó? Osztályok kezelése – Új direktívák – Konstruktor – Destruktor Interfészek Kivételkezelés.
Objektum orientált programozás a gyakorlatban
Programozási technológia
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
Javascript Microsoft által készített kiegészítése Statikus típusosság Nagy projektek Windows 8 fejlesztésénél WinRT egy részét ebben írták Nyílt forráskódú,
1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Programozás I. 7. gyakorlat.
Java programozási nyelv Filekezelés
Java programozási nyelv Metódusok
Java programozási nyelv Adatbekérés konzolról
Programozás III KOLLEKCIÓK.
1 Objektum orientált programozás Öröklődés: többszörös öröklődés, konstruktorok, destruktorok, overloading Nagy Szilvia.
Programozás III KIVÉTEL – CSOMAG. CSOMAGOK Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek. A Java is csomagok halmaza: csomagokban.
OOP ÖRÖKLŐDÉS, INTERFÉSZ
Programozás III OOP ÖRÖKLŐDÉS.
Programozás III KOLLEKCIÓK.
Objektumorientált alapjai ISZAM III.évf. részére Bunkóczi László.
Programozás III CSOMAG. CSOMAGOK Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek. A Java is csomagok halmaza: csomagokban van.
Ficsor Lajos CPP2 / 1 Származtatási mechanizmus a C++ nyelvben Ficsor Lajos Miskolci Egyetem Általános Informatikai Tanszék.
Ficsor Lajos A C++ programozási nyelv I. CPP1/ 1 Osztály és objektum fogalma.
Típuskonverzió a C++ nyelvben
1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Programozás I. 5. gyakorlat.
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás I. 7. gyakorlat.
Ficsor Lajos Objektumok inicializálása CPP4 / 1 Objektumok inicializálása Ficsor Lajos Miskolci Egyetem Általános Informatikai Tanszék.
1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Programozás I. 6. gyakorlat.
1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Programozás I. 4. gyakorlat.
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Programozás I. 7. gyakorlat.
TÁMOP /1-2F JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam Osztályok, objektumok definiálása és alkalmazása. Saját.
TÁMOP /1-2F JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam Utasítás és blokk. Elágazás típusai, alkalmazása Kovács.
Krizsán Zoltán, iit C# osztályok 2 Adattagok  Osztály hatáskörben definiált változó.  Formája: [attribútum] [módosító] típus azonosító [=kezdő érték][,
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
Előadás másolata:

JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam Öröklődés. Saját kivételosztály Kovács Zsuzsanna 2009 TÁMOP 2.2.3-07/1-2F-2008-0011

JAVA PROGRAMOZÁSI NYELV NETBEANS KÖRNYEZETBEN 14/10. ÖRÖKLŐDÉS. SAJÁT KIVÉTELOSZTÁLY

SZÁRMAZTATÁS 01. Származtatás public class VegzosTanulo extends Tanulo { private double erettsegiAtlag; String egyetem, szak; public double getErettsegiAtlag() { return erettsegiAtlag; } public void setTovabbTanulas(String egyetem, String szak) { this.egyetem = egyetem; this.szak = szak; a VegzosTanulo osztály a Tanulo osztály leszármazottja, vagy gyermeke a Tanulo pedig a VegzosTanulo szülője, vagyis őse 3

ÖRÖKLŐDÉS 02. védett tag (protected): csak az adott csomagban definiált osztályokból érhetjük el, illetve minden belőle származtatott osztályból félnyilvános tagok (módosító nélkül): öröklődnek nyilvános tagok (public): öröklődnek privát tagok (private): nem öröklődnek, de elérhetők a hozzájuk definiált nyilvános metódusokon keresztül konstruktor: nem öröklődik konstruktorból a super kulcsszóval meghívható az ős konstruktora a this kulcsszóval az osztályban definiált másik konstruktort is hívjuk abstract osztály/metódus: nincs kidolgozva, nem példányosítható/hívható final osztály/metódus: végleges, nem örökíthető/nem lehet felüldefiniálni 4

ÖRÖKLŐDÉS 03. Példa ős metódusának hívására public class VegzosTanulo extends Tanulo { private double erettsegiAtlag; ... public VegzosTanulo(String nev, char osztaly, double erettsAtlag) { super(nev, 13, osztaly); erettsegiAtlag = erettsAtlag; } VegzosTanulo vtan = new VegzosTanulo( "Nagy Lajos", 'B', 4.235); 5

STATIKUS ÉS DINAMIKUS TÍPUS 04. Példa Tanulo tan = new Tanulo("Kiss Piroska", 12, 'B'); VegzosTanulo vtan = new VegzosTanulo("Nagy Lajos", 'B'); tan = vtan; vtan = (VegzosTanulo)tan; Példa public class Iskola { private static boolean egyOsztalybaJarnak(Tanulo tan1, Tanulo tan2) { return (tan1.getEvfolyam() == tan2.getEvfolyam() && tan1.getOsztaly() == tan2.getOsztaly()); } ... Tanulo tan1 = new Tanulo("Tóth Brúnó", 12, 'B'); Tanulo tan2 = new Tanulo("Kiss Piroska", 12, 'B'); VegzosTanulo vtan = new VegzosTanulo("Nagy Lajos", 'B'); boolean b = Iskola.egyOsztalybaJarnak(tan1, tan2); // érték: true b = Iskola.egyOsztalybaJarnak(tan1, vtan); // érték: false 6

METÓDUSOK FELÜLDEFINIÁLÁSA 05. Példa metódus felüldefiniálására public class Tanulo { ... private int evesOsztalypenz = 10000; public int szamolHaviOsztalypenz() { return evesOsztalypenz / 10; } public class VegzosTanulo extends Tanulo { private int ballagasKoltsegek; return super.szamolHaviOsztalypenz() + ballagasKoltsegek/10; 7

ABSZTRAKT METÓDUS 06. Példa absztrakt metódusra public abstract class Negyszog { protected double aOldal, bOldal; protected double keruletSzamit() { return 2*(aOldal + bOldal); } protected abstract double teruletSzamit(); public class Teglalap extends Negyszog { public Negyszog(double aOldal, double bOldal) { this.aOldal = aOldal; this.bOldal = bOldal; protected double teruletSzamit() { return aOldal * bOldal; 8

SAJÁT KIVÉTELOSZTÁLY 07. Kivételosztály definíciója class NemSzerkeszthetoException extends Exception { public NemSzerkeszthetoException(String uzenet) { super(uzenet); } Kivételosztály kezelése try { Haromszog h = new Haromszog(1, 2, 10); } catch (NemSzerkeszthetoException e) { System.err.println(e.getMessage()); } 9

SAJÁT KIVÉTELOSZTÁLY 08. Kivétel dobása public class Haromszog { private double a, b, c; public Haromszog(double a, double b, double c) throws NemSzerkeszthetoException { if(a+b>c && a+c>b && b+c>a) { this.a = a; this.b = b; this.c = c; } else { throw new NemSzerkeszthetoException( "Nem szerkesztheto!"); } 10

ÖRÖKLŐDÉS NETBEANSBEN 09. Öröklődést implementáló példa elkészítése SZINFO13_VID_10_01 11