Tömbök ismétlés Osztályok Java-ban Garbage collection

Slides:



Advertisements
Hasonló előadás
C# nyelvi áttekintő A „Programozás C# nyelven (Illés Zoltán)”
Advertisements

Osztály leszármaztatás
Krizsán Zoltán iit 1.1.  Aszinkron történésről értesítés egy vagy több objektum számára.  Delegátumok segítségével valósítja meg a C#.  event típus,
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
C++ programozási nyelv Gyakorlat hét
Programozás III OOP ALAPOK.
Programozás III KOLLEKCIÓK 2..
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 Tömbök, kollekciók és egyéb alaposztályok.
© 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.
Objektum-elvű programozás (OOP)
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
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.
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás II. 8. Gyakorlat Operator overloading II.
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás II. 5. Gyakorlat Öröklődés, virtuális függvények,
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.
Mutatók, tömbök, függvények
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.
A Java programozási nyelvSoós Sándor 1/16 Java programozási nyelv 6. rész – Java a gyakorlatban 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.
6. előadás Hatókör, láthatóság, élettartam. Változók leképzése a memóriára. Blokkszerkezetes nyelvek. Kivételkezelés.
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 Csomagok. © Kozsik Tamás A program tagolása Típusdefiníciók (osztályok, interfészek) Metódusok Blokk utasítások Csomagok.
OOP ÖRÖKLŐDÉS, INTERFÉSZ
A JAVA TECHNOLÓGIA LÉNYEGE Többlépcsős fordítás A JAVA TECHNOLÓGIA LÉNYEGE Platformfüggetlenség.
A Java jellemzői Hordozható, platformfüggetlen forráskód és bájtkód szinten forráskód és bájtkód szinten Tisztán objektumorientált csak osztályok, illetve.
HEFOP 3.3.1–P /1.01 Az OOP elve A programozási paradigma (vagy elv) a számítógépes programok tervezésének és programozásának módszerét jelenti.
Szoftvertechnológia alapjai Java előadások Förhécz András, doktorandusz tárgy honlap:
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.
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.
Hernyák Zoltán Programozási Nyelvek II.
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.
Hernyák Zoltán Programozási Nyelvek II.
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ú,
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 OOP ALAPOK.
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ó.
Ficsor Lajos A C++ programozási nyelv I. CPP1/ 1 Osztály és objektum fogalma.
1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Programozás I. 5. 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.
V 1.0 Programozás I. Osztályok, objektumok 1 ÓE-NIK-AII, 2014.
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.
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][,
a programegységek között
Hernyák Zoltán Magasszintű Programozási Nyelvek I.
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
Programozás I. 4. gyakorlat.
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
Függvénysablonok használata
Előadás másolata:

Tömbök ismétlés Osztályok Java-ban Garbage collection 4. gyakorlat Tömbök ismétlés Osztályok Java-ban Garbage collection

Tömbök ismétlés Létrehozás Inicializálás Többdimenziós tömbök

Osztályok Amikor saját osztályt írunk, annak (általában) vannak adattagjai és/vagy metódusai. Adattagok megadása [láthatóság] [static] [final] [transient] [volatile] típus változóNév Metódusok megadása [láthatóság] [static] [abstract] [final] [native] [synchronized] visszatérésiTípus metódusNév ([paraméterek]) [throws kivételLista]

Osztályok (folyt.) Példa public class Pont { // Adattagok private int x; private int y; public double tavolsag(Pont p) { double tav; // távolságot számoló kód… return tav; }

Osztályok (folyt.) Különleges metódusok Konstruktor Neve meg kell hogy egyezzen az osztály nevével Visszatérési típusa nem lehet Új objektum létrehozásakor hívódik meg. Általában az adattagok inicializálásáért felelős kódot helyezzük a törzsébe. A paraméter nélküli konstruktort default konstruktornak nevezzük, ha van legalább egy paramétere, akkor paraméteres konstruktornak.

Osztályok (folyt.) Példa: public Pont() { x = 0; y = 0; } public Pont(int xKoord, int yKoord) { x = xKoord; y = yKoord;

Osztályok (folyt.) Getter/Setter metódusok Az adattagok későbbi (konstruálás utáni) beállítására (setter) illetve lekérdezésére (getter) szolgálnak. Ezen metódusok elnevezésére vonatkozó szabályok: Getter: getAdattagNeve Setter: setAdattagNeve

Osztályok (folyt.) Példa public int getX() { return x; } public void setX(int ujX) { x = ujX;

Osztályok (folyt.) Statikus mezők és metódusok static kulcsszóval Mezők esetén azt jelenti, hogy nem rendelkezik minden objektum külön példánnyal belőle, hanem csak egy példányban van jelen a memóriában, és az összes objektum ezt használja közösen. Ha nem hozunk létre egyetlen objektumot sem, a statikus mező akkor is létezik. Elérése: OsztályNév.statikusMezőNév

Osztályok (folyt.) Példa public class Ember { public static final boolean FERFI = true; } … Ember.FERFI

Osztályok (folyt.) Konstanst úgy hozhatunk létre, hogy egy statikus mezőt a final módosítóval is ellátunk. Az ilyen mezők kezdőértéke nem változtatható meg, nevüket csupa nagy betűvel kell írni, szóhatáron aláhúzásjellel elválasztva. Példa public static final boolean FERFI = true;

Osztályok (folyt.) Ha egy metódust teszünk statikussá, akkor az meghívható lesz objektumpéldány létrehozása nélkül. Statikus metódusból csak a statikus mezőket lehet elérni. Elérése: OsztályNév.statikusMetódusNév

Osztályok (folyt.) Példa public class Ember { public static void kiirEmber(String nev, int szuletett) { System.out.print(“Az ember neve “ + nev); System.out.println(“, szuletesi datum: “ + szuletett); } … Ember.kiirEmber(“Hobi Zsolti”, 19870615);

Osztályok (folyt.) A this kulcsszó Hivatkozás az aktuális objektumra Mikor használjuk? Például, ha egy metódus formális paraméterének neve megegyezik egy attribútum nevével, akkor kénytelenek vagyunk használni Például: public Pont(int x, int y) { this.x = x; this.y = y; }

Osztályok (folyt.) A null kulcsszó Azt jelöli, hogy az adott referencia nincs beállítva semmilyen objektumra. Segítségével jelezhetjük a Java beépített szemétgyűjtőjének (Garbage Collector – gc), hogy már nem akarunk hivatkozni az objektumra, fel lehet szabadítani a számára foglalt memóriát. Példa Pont p1 = new Pont(6, 15); ... p1 = null;

Garbage collection Nem használt objektumokat töröljük a memóriából Nem tudni pontosan mikor hívódik, ha van még hely a memóriában, akkor nem lassítja feleslegesen a programot Manuálisan is hívható: System.gc();

Feladatok Példa: Plusz pontos feladatok → feladatok.txt Ember feladat megírása együtt Plusz pontos feladatok → feladatok.txt