Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

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

Hasonló előadás


Az előadások a következő témára: "4. gyakorlat Tömbök ismétlés Osztályok Java-ban Garbage collection."— Előadás másolata:

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

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

3 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]

4 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; }

5 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.

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

7 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

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

9 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

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

11 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;

12 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

13 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);

14 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; }

15 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;

16 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();

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


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

Hasonló előadás


Google Hirdetések