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

1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Programozás I. 6. gyakorlat.

Hasonló előadás


Az előadások a következő témára: "1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Programozás I. 6. gyakorlat."— Előadás másolata:

1 1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Programozás I. 6. gyakorlat

2 Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor2Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Interfész Olyan „osztály”, amiben csak absztrakt metódus van Csak egy formát ad, implementáció nélkül Nincs benne az osztályhierarchiában interface Hangszer{... }

3 Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor3Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Interfész Metódusai: –impliciten public és abstract –nem lehet private és final (nem lenne értelme) –Miért? interfészt implementálni az implements kulcsszóval lehet Egyszerre több interfészt is implementálhatunk

4 Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor4Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Interface vs. abstract class Interface: –implementáljuk –egyetlen metódust sem implementálhat –egyszerre több interface-t is implementálhatunk Abstract class: –örököltetjük –implementálhat metódusokat –csak egyszeresen örököltethetünk

5 Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor5Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Interfész public class Zongora implements Hangszer{... } public abstract class AlkoholosItal extends Ital implements Alkoholos{... }

6 Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor6Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Instance of Ezzel megvizsgálhatjuk az objektum típusát (konkrét egyezés, vagy gyerek) public void isString(Object o){ if(o instanceof String){ System.out.println("Ez egy String."); } else { System.out.println("Ez nem egy String."); }

7 Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor7Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Kacsa class KisKacsa{ } class KozepesKacsa extends KisKacsa{ } class NagyKacsa extends KozepesKacsa{ } public class Main { public static void main(String[] args){ KisKacsa kacsa = new NagyKacsa(); if(kacsa instanceof KisKacsa) { System.out.println("Ez egy KisKacsa!"); } if(kacsa instanceof KozepesKacsa){ System.out.println("Ez egy KozepesKacsa!"); } if(kacsa instanceof NagyKacsa){ System.out.println("Ez egy NagyKacsa!"); } } } Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor7

8 Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor8Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor getClass() Hasonló az instanceof-hoz De ez csak konkrét típusokra hasonlít össze, gyerekekre nem! Örököljük az Object ősosztálytól (és nem is írhatjuk felül!) Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor8 public void isString(Object o){ if(o.getClass() == String.class){ System.out.println("Ez egy String."); } else { System.out.println("Ez nem egy String."); }

9 Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor9Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Kacsa class KisKacsa{ } class KozepesKacsa extends KisKacsa{ } class NagyKacsa extends KozepesKacsa{ } public class Main { public static void main(String[] args){ KisKacsa kacsa = new NagyKacsa(); if (kacsa.getClass() == KisKacsa.class) { System.out.println("Ez egy KisKacsa!"); } if (kacsa.getClass() == KozepesKacsa.class) { System.out.println("Ez egy KozepesKacsa!"); } if (kacsa.getClass() == NagyKacsa.class) { System.out.println("Ez egy NagyKacsa!"); } } } Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor9

10 Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor10Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Jövő héten zh Személyi igazolvány/diákigazolvány Minden nyomtatott segédanyag használható! –Általam készített segédlet: szeged.hu/~antal/okt/prog1/prog1_zh1_2015.pdf szeged.hu/~antal/okt/prog1/prog1_zh1_2015.pdf –Aki gyakorol, annak ez biztosan elegendő –Előadásdia, gyakorlati diák, példakódok, könyvek NEM lesz gyakorlat Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor10


Letölteni ppt "1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Programozás I. 6. gyakorlat."

Hasonló előadás


Google Hirdetések