7. K: JAVA alapok Konzultáció

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "7. K: JAVA alapok Konzultáció"

Átírás

1 Objektum Orientált Programozás 7. K: JAVA alapok Konzultáció 35/1B IT MAN B IT v: MAN

2 Hiba, biztonságos program 01. Szintaktikai hiba imt i = 0; system.out.println( alma ); for (int i = 0, i<= 10, i++)... Szemantikai hiba int a=0, b=10/a; x1=(-b+math.sqrt(b*b-4*a*c))/2*a; args[++i] Biztonságos program szemantikai hibákat megpróbálja kezelni a belőlük következő hibákkal együtt ennek módja: kivételkezelés 35/2 B IT MAN

3 Kivételkezelés 02. kivétel (exception): a program futása során bekövetkező hiba; olyan esemény, amely megszakítja az utasítások végrehajtásának normális menetét kivételobjektum: ha hiba keletkezik, automatikusan létrejön kivétel kiváltódása: a hiba hatására létrejön az objektum kivétel elkapása: kivételt lehetőségünk van elkapni és kezelni kivételkezelés: azt a programrészletet, melyben az adott hibát orvosoljuk ellenőrzött kivétel: kezelése minden esetben kötelező; nem kezelése szintaktikai hibát eredményez, és a program fordítása sikertelen lesz nem ellenőrzött kivétel: kezelése nem kötelező; kiváltódásának ellenőrzése sem kötelező, ám minden esetben ajánlott 35/3 B IT MAN

4 Kivételosztályok 03. Ellenőrzött kivételek IOException Ki- és bemeneti hibák esetén váltódik ki, pl. konzolról való beolvasáskor. FileNotFoundException EOFException Nem ellenőrzött kivételek Az IOException egyik alkivételosztálya. Akkor kapjuk például, ha nem létező fájlba próbálunk írni. Fájl végét jelző kivétel. Szintén az IOException alosztálya. RuntimeException NullPointerException IndexOutOfBounds Exception ArithmeticException Valamennyi futásidejű kivétel ősosztálya. Olyan esetben kapjuk, ha null értékű, azaz inicializálatlan változóra vagy objektumra hivatkozunk. Túlindexelést jelző kivétel. Akkor kapjuk, ha egy tömb, karakterlánc, vagy más indexelhető szerkezet nem létező indexére hivatkozunk. Aritmetikai műveletek hibájakor kapjuk, például nullával való osztáskor. NumberFormatException Akkor kapjuk például, ha nem megfelelő számot tartalmazó karakterláncot próbálunk szám típusúvá konvertálni. IllegalArgument Akkor váltódik ki, ha egy metódust nem megfelelő paraméterekkel Exception hívunk. 35/4 B IT MAN

5 Try-catch blokk 04. Ha a kivételt nem kezeljük abban a blokkban, ahol keletkezett, úgy a tartalmazó blokknak adódik át. Ez egészen addig folytatódik, míg valahol nincs egy olyan kivételkezelő blokk, mely az adott kivételt kezelné. Ha a kivételt egyik blokkban sem kezeljük, és feljut a legfelsőbb szintre: a program terminál Szintaktikája try { kritikus műveletek; catch (KivételTípus1 e1) { hibakezelés catch (KivételTípus2 e2) { hibakezelés... 35/5 B IT MAN

6 HibaProba futtatható osztály Direkt hibázunk, kiíratjuk a hiba típusát, aztán lekezeljük! public class HibaProba { public static void main(string[ ] args) { int [ ] s = new int[4]; for (int i=1; i<4; i++){ s[i] = (int)(math.random()*20); for (int i=0; i<4; i++) System.out.println(s[i]); System.out.println(s[2]/s[0]); Konzol Az s tömbnek minden eleme 0 értékkel jön létre. A 0. elem 0 marad, a többi elem más értéket kap Exception in thread "main" java.lang.arithmeticexception: / by zero 35/6 at HibaProba.main(HibaProba.java:12) B IT MAN

7 HibaProba futtatható osztály Direkt hibázunk, kiíratjuk a hiba típusát, aztán lekezeljük! public class HibaProba { public static void main(string[ ] args) { int [ ] s = new int[4]; for (int i=1; i<4; i++){ s[i] = (int)(math.random()*20); for (int i=0; i<4; i++) System.out.println(s[i]); try { System.out.println(s[2]/s[0]); catch(arithmeticexception ae){ System.out.println("Nullával osztottál!"); Konzol /7 Nullával osztottál! B IT MAN

8 HibaProba futtatható osztály Direkt hibázunk, kiíratjuk a hiba típusát, aztán lekezeljük! public class HibaProba { public static void main(string[ ] args) { int [ ] s = new int[4]; for (int i=1; i<4; i++){ s[i] = (int)(math.random()*20); for (int i=0; i<4; i++) System.out.println(s[i]); System.out.println("Az 5. elem értéke: "+s[5]); Konzol Exception in thread "main" java.lang.arrayindexoutofboundsexception: 5 A tömbnek csak 4 eleme van! 35/8 at HibaProba.main(HibaProba.java:12) B IT MAN

9 HibaProba futtatható osztály Direkt hibázunk, kiíratjuk a hiba típusát, aztán lekezeljük! public class HibaProba { public static void main(string[ ] args) { int [ ] s = new int[4]; for (int i=1; i<4; i++){ s[i] = (int)(math.random()*20); for (int i=0; i<4; i++) System.out.println(s[i]); try { System.out.println("Az 5. elem értéke: "+s[5]); catch(arrayindexoutofboundsexception e){ System.out.println("Hibás indexhasználat a tömbnél!"); Konzol /9 Hibás indexhasználat a tömbnél! B IT MAN

10 HibaProba futtatható osztály Direkt hibázunk, kiíratjuk a hiba típusát, aztán lekezeljük! public class HibaProba { public static void main(string[ ] args) { int [ ] s = new int[4]; for (int i=0; i<4; i++) System.out.println(s[i]); s = null; System.out.println(s[0]); Konzol Az s tömbnek minden eleme 0 értékkel jön létre. Az s tömbnek minden eleme null referenciájú lesz! Mi az s változó dinamikus és statikus típusa? Exception in thread "main" Null értékre mutató referencia kivétel! java.lang.nullpointerexception at HibaProba.main(HibaProba.java:12) 35/10 B IT MAN

11 HibaProba futtatható osztály Direkt hibázunk, kiíratjuk a hiba típusát, aztán lekezeljük! public class HibaProba { public static void main(string[ ] args) { int [ ] s = new int[4]; for (int i=0; i<4; i++) System.out.println(s[i]); s = null; try { System.out.println(s[0]); catch(arrayindexoutofboundsexception e){ System.out.println("Null értékre mutató referencia!"); Konzol 35/11 Null értékre mutató referencia! B IT MAN

12 SajatKivetel osztály Mindig az Exception osztály leszármazottja public class SajatKivetel extends Exception { SajatKivetel(String uzenet) { super(uzenet); 35/12 B IT MAN

13 HibaProba futtatható osztály Kivételek lekezelése saját kivétel osztállyal public class HibaProba { public static void main(string[ ] args) { int [ ] s = new int[4]; for (int i=0; i<4; i++) System.out.println(s[i]); s = null; try { if (s == null) throw new SajatKivetel("Null értékre mutató referencia!"); System.out.println(s[0]); catch(sajtkivetel sk){ System.out.println(sk.getMessage()); Konzol public class SajatKivetel extends Exception { SajatKivetel(String uzenet) { super(uzenet); 35/13 Null értékre mutató referencia! B IT MAN

14 HibaProba futtatható osztály Kivételek lekezelése saját kivétel osztállyal public class HibaProba { public static void main(string[ ] args) { int [ ] s = new int[4]; for (int i=0; i<4; i++) System.out.println(s[i]); s = null; try { if (s[0] == 0) throw new SajatKivetel("Az osztó értéke: 0!"); System.out.println(s[2]/s[0]); if (5 > s.length) throw new SajatKivetel("Az index nagyobb, mint a tömb mérete!"); System.out.println("Az 5. elem értéke: "+s[5]); catch(sajtkivetel sk){ System.out.println(sk.getMessage()); Konzol public class SajatKivetel extends Exception { SajatKivetel(String uzenet) { super(uzenet); 35/14 Az osztó értéke: 0! B IT MAN

15 Gyakorló példa a számonkérésre 1. Feladat: Készítsen egy Szemely nevű osztályt a szokásos konvenciók betartásával, amely tárolja egy ember nevét (szöveg) és Neptun kódját (szöveg) Készítsen konstruktort, mely a név és a kód alapján inicializál egy példányt Legyen az osztálynak a nevet visszaadó metódusa Alkosson olyan törzs nélküli metódust, mellyel egész értékként kiszámítja a Juttatás-t. 2. Feladat: Készítse el a Hallgato nevű osztályt, a Szemely osztály leszármazottjaként Az osztály tárolja a Hallgató féléves jegyeit egy egész típusú tömbbe, és legyen egy Ösztöndíjat tároló adattagja is. Az osztályhoz tartozzon egy konstans, mely az ösztöndíj számítás ALAPértékét jelentse, értéke legyen /15 B IT MAN

16 Gyakorló példa a számonkérésre A 2. Feladat folytatása: Készítsen egy, a jegyek számát beállító metódust Készítsen egy metódust, egy konkrét (valahányadik) jegy beírására Alkosson metódust az ösztöndíj beállítására Készítsen egy Átlag metódust, mely a jegyek átlagát adja vissza A Juttatás metódus adja vissza egy hallgató juttatását, mely ha az átlag legalább hármas, akkor az átlag és az alap szorzata, egyébként nulla. Az osztály tostring metódusa a következő formában adjon vissza adatot: Név: Géza, Átlag: 3.1, Ösztöndíj: Készítsen egy jegykiír nevű metódust, mely kiírja egy hallgató nevét és összes jegyét a következő formában: Géza 0. jegye: 5 Géza 1. jegye: 5 Géza 2. jegye: 2 Géza 3. jegye: /16 B IT MAN

17 Gyakorló példa a számonkérésre 3. Feladat: Készítsen egy HallgatoProgram nevű futtatható osztályt Készítsen egy 5 elemű tömböt hallgatók adatainak tárolására Olvasson be a billentyűzetről a hallgatók nevét és kódját, és az adatokkal inicializálja a hallgatók adatait Állítsa be a jegyek számát 10-re, és minden hallgatóhoz generáljon véletlenszerűen az (1-5) tartományban jegyeket Állítsa be minden hallgatónál az ösztöndíjat, melyet a Juttatás metódussal határozzon meg Írassa ki minden Hallgató adatait a képernyőre Írassa ki az utolsó hallgató jegyeit a képernyőre 35/17 B IT MAN

18 Gyakorló példa a számonkérésre Futtatási minta: A hallgató neve: Jenő A hallgató kódja: ab45bb A hallgató neve: Béla A hallgató kódja: 3mz675 A hallgató neve: Éva A hallgató kódja: cc98vv A hallgató neve: Zoli A hallgató kódja: zxa3e4 A hallgató neve: Géza A hallgató kódja: wxyc78 Név: Jenő, Átlag: 3.5, Ösztöndíj: Név: Béla, Átlag: 4.0, Ösztöndíj: Név: Éva, Átlag: 2.5, Ösztöndíj: 0 Név: Zoli, Átlag: 2.6, Ösztöndíj: 0 Név: Géza, Átlag: 3.1, Ösztöndíj: Géza 0. jegye: 5 Géza 1. jegye: 5 Géza 2. jegye: 2 Géza 3. jegye: 3 Géza 4. jegye: 5 Géza 5. jegye: 1 Géza 6. jegye: 3 Géza 7. jegye: 4 Géza 8. jegye: 1 Géza 9. jegye: 2 35/18 B IT MAN

19 Szemely osztály, adattagok: név, neptunkód Konstruktor (név, neptunkód). Metódusok: getnev, Juttatás public abstract class Szemely { private String Nev; private String Neptunkod; public Szemely (String Nev, String Kod){ this.nev = Nev; Neptunkod = Kod; public String getnev(){ return Nev; public abstract int Juttatas(); 35/19 B IT MAN

20 Hallgato osztály, szülő: Szemely, adattagok: jegyek[ ], Ösztöndíj Konstruktor (név, neptunkód). Metódusok: setjegyek, JegyBeír, setösztöndíj, Átlag, Juttatás, tostring, jegykiír public class Hallgato extends Szemely { private int [ ] jegyek; private int Osztondij; final static int ALAP = 10000; public Hallgato (String Nev, String Kod){ super(nev, Kod); public void setjegyek(int j){ jegyek = new int[j]; public void JegyBeir(int i, int jegy){ jegyek[i] = jegy; public void setosztondij(int od){ Osztondij = od; 35/20 B IT MAN

21 Hallgato osztály, szülő: Szemely, adattagok: jegyek[ ], Ösztöndíj Konstruktor (név, neptunkód). Metódusok: setjegyek, JegyBeír, setösztöndíj, Átlag, Juttatás, tostring, jegykiír public double Atlag(){ double atlag = 0d; for (int i=0; i<10; i++) atlag += jegyek[i]; return atlag/10d; public int Juttatas(){ if (Atlag() >= 3) return (int)(atlag()*alap); else return 0; public String tostring(){ return "Név: "+getnev()+", Átlag: "+Atlag()+", Ösztöndíj: "+Osztondij; public void jegykiir(){ for (int i=0; i<10; i++) System.out.println(getNev()+" "+i+". jegye: "+jegyek[i]); 35/21 B IT MAN

22 HallgatoProgram futtatható osztály 5 hallgató beolvasása tömbbe, 10 jegy generálása hallgatónként, ösztöndíj számítása, hallgatók adatainak kiírása, utolsó hallgató jegyeinek kiírása import java.util.scanner; public class HallgatoProgram { public static void main(string[ ] args) { Scanner sc = new Scanner(System.in); Hallgato [ ] h = new Hallgato[5]; String s1, s2; for (int i=0; i<5; i++){ System.out.println("A hallgató neve: "); s1 = sc.nextline(); System.out.println("A hallgató kódja: "); s2 = sc.nextline(); h[i]= new Hallgato(s1, s2); h[i].setjegyek(10); for (int j=0; j<10; j++){ h[i].jegybeir(j, 1+(int)(Math.random()*5)); h[i].setosztondij(h[i].juttatas()); 35/22 B IT MAN

23 HallgatoProgram futtatható osztály 5 hallgató beolvasása tömbbe, 10 jegy generálása hallgatónként ösztöndíj számítása, hallgatók adatainak kiírása, utolsó hallgató jegyeinek kiírása for (int i=0; i<5; i++) System.out.println(h[i]); h[4].jegykiir(); 35/23 B IT MAN

24 Gyakorló példa a számonkérésre 1. Feladat: Készítsen egy Alkoholos nevű interfészt, benne egy mennyialkoholttartalmaz nevű valós eredményt visszaadó metódust 2. Feladat: Készítsen egy Ital nevű osztályt, legyen az adattagja az ital neve Készítsen a névvel inicializáló konstruktort Készítsen getnév metódust Alkosson olyan törzs nélküli metódust, mellyel szövegként visszaadja azt, hogy mibőlkészült az ital Alkosson olyan törzs nélküli metódust, mellyel szövegként visszaadja azt, hogy milyenízű az ital 35/24 B IT MAN

25 Gyakorló példa a számonkérésre 3. Feladat: Készítse el a Gyümölcslé nevű osztályt, az Ital osztály leszármazottjaként Az osztály adattagként tárolja az alapanyag-ot, és a gyümölcslé ízét Legyen az osztálynak olyan konstruktora, mely a három adattag értékével inicializás (név, alapanyag, íz) Valósítsa meg a szükséges metódusokat Az osztály tostring metódusa a következő formában adjon vissza adatot: Hohes C: nem alkoholos, citrom alapú ital 35/25 B IT MAN

26 Gyakorló példa a számonkérésre 4. Feladat: Készítse el a AlkoholosItal nevű osztályt, az Ital osztály leszármazottjaként, melyben megvalósítja az Alkoholos interfészt Az osztály adattagként tárolja az alapanyag-ot, és a gyümölcslé ízét, és az alkoholtartalmat (0-1 közötti valós szám) Legyen az osztálynak olyan konstruktora, mely a négy adattag értékével inicializás (név, alapanyag, íz, alkohol) Valósítsa meg a szükséges metódusokat Az osztály tostring metódusa a következő formában adjon vissza adatot: Pálinka: 40.0% alkohol tartalmú ital 35/26 B IT MAN

27 Gyakorló példa a számonkérésre 5. Feladat: Készítsen egy AbsztinensProgram nevű futtatható osztályt Készítsen egy osztályszintű elfogyaszt nevű metódust, mely egy italt kap paraméterül. Kiírja a kapott ital nevét, és ha az ital alkoholos, akkor a "Köszönöm, nem kérem! Alkoholt tartalmaz!" szöveget, egyébként a "Megittam, finom volt!" szöveget. Hozzon létre egy 4 elemű Ital típusú tömböt Töltse fel 2 Gyümölcslével, és 2 AlkoholosItal-lal Fogyassza el az italokat 35/27 B IT MAN

28 Gyakorló példa a számonkérésre Futtatási minta: Megkínáltak a következővel: Sió barack: nem alkoholos, barack alapú ital Megittam, finom volt! Megkínáltak a következővel: Sör: 5.0% alkohol tartalmú ital Köszönöm, nem kérem! Alkoholt tartalmaz! Megkínáltak a következővel: Hohes C: nem alkoholos, citrom alapú ital Megittam, finom volt! Megkínáltak a következővel: Pálinka: 40.0% alkohol tartalmú ital Köszönöm, nem kérem! Alkoholt tartalmaz! 35/28 B IT MAN

29 Alkoholos interfész, mennyialkoholttartalmaz metódus public interface Alkoholos { public double mennyialkoholttartalmaz(); 35/29 B IT MAN

30 Ital osztály, név adattag, konstruktor, getnév metódus, törzsnélküli mibőlkészült és milyenízű metódusok public abstract class Ital { private String nev; public Ital(String nev) { this.nev = nev; public String getnev(){ return nev; public abstract String mibolkeszult(); public abstract String milyenizu(); 35/30 B IT MAN

31 Gyümölcslé osztály, szülő: Ital, adattagok: alapanyag, íz Konstruktor (név, alapanyag, íz). Metódusok: milyenízű, mibőlkészült tostring: Sió barack: nem alkoholos, barack alapú ital public class Gyumolcsle extends Ital { private String alapanyag; private String iz; public Gyumolcsle(String nev, String alap, String iz) { super(nev); alapanyag = alap; this.iz = iz; public String milyenizu() { return iz; public String mibolkeszult(){ return alapanyag; public String tostring() { return getnev()+": nem alkoholos, "+alapanyag+" alapú ital"; 35/31 B IT MAN

32 AlkoholosItal osztály, szülő: Ital, implementálja az Alkoholos interfészt adattagok: alapanyag, íz, alkohol. Konstruktor (név, alapanyag, íz, alkohol). Metódusok: milyenízű, mibőlkészült tostring: Pálinka: 40.0% alkohol tartalmú ital public class AlkoholosItal extends Ital implements Alkoholos { private String alapanyag; private String iz; private double alkoholtartalom; public AlkoholosItal(String nev, String alap, String iz, double alk) { super(nev); alapanyag = alap; this.iz = iz; alkoholtartalom = alk; public String milyenizu() { return iz; public String mibolkeszult(){ return alapanyag; public String tostring() { return getnev()+": "+alkoholtartalom*100+"% "+" alkohol tartalmú ital"; 35/32 B IT MAN

33 AbsztinensProgram futtatható osztály elfogyaszt osztály metódus, 4 elemű Ital tömb, feltöltés adatokkal, italok elfogyasztása public class AbsztinensProgram { public static void elfogyaszt(ital i) { System.out.println("Megkínáltak a következővel: "+i); if (i instanceof Alkoholos) System.out.println("Köszönöm, nem kérem! Alkoholt tartalmaz!"); else System.out.println("Megittam, finom volt!"); public static void main(string[ ] args) { Ital [ ] ital = new Ital [4]; ital[0] = new Gyumolcsle("Sió barack", "barack", "édes"); ital[1] = new AlkoholosItal("Sör", "komló", "keserű", 0.05); ital[2] = new Gyumolcsle("Hohes C", "citrom", "savanykás"); ital[3] = new AlkoholosItal("Pálinka", "szilva", "szilva", 0.4); for (int i=0; i<4; i++) AbsztinensProgram.elfogyaszt(ital[i]); 35/33 B IT MAN

34 Konzol Megkínáltak a következővel: Sió barack: nem alkoholos, barack alapú ital Megittam, finom volt! Megkínáltak a következővel: Sör: 5.0% alkohol tartalmú ital Köszönöm, nem kérem! Alkoholt tartalmaz! Megkínáltak a következővel: Hohes C: nem alkoholos, citrom alapú ital Megittam, finom volt! Megkínáltak a következővel: Pálinka: 40.0% alkohol tartalmú ital Köszönöm, nem kérem! Alkoholt tartalmaz! 35/34 B IT MAN

35 VÉGE VÉGE 35/35 B IT MAN

OOP: Java 8.Gy: Gyakorlás

OOP: Java 8.Gy: Gyakorlás OOP: Java 8.Gy: Gyakorlás 43/1 B ITv: MAN 2019.04.10 43/2 Egy régebbi beszámoló anyaga 1. Feladat: Készítsen egy Szemely nevű osztályt a szokásos konvenciók betartásával, amely tárolja egy ember nevét

Részletesebben

Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN

Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN Objektum Orientált Programozás 11. Kivételkezelés 44/1B IT MAN B IT v: 2016.05.03 MAN Pici elmélet A Java kivételkezelésének célja a programfutás során keletkezett hibák kiszűrése és megfelelő kezelése.

Részletesebben

Kivételkezelés, beágyazott osztályok. Nyolcadik gyakorlat

Kivételkezelés, beágyazott osztályok. Nyolcadik gyakorlat Kivételkezelés, beágyazott osztályok Nyolcadik gyakorlat Kivételkezelés Nem minden hibát lehet fordítási időben megtalálni Korábban (pl. C-ben) a hibakezelést úgy oldották meg, hogy a függvény hibakódot

Részletesebben

OOP: Java 8.Gy: Abstract osztályok, interfészek

OOP: Java 8.Gy: Abstract osztályok, interfészek OOP: Java 8.Gy: Abstract osztályok, interfészek 26/1 B ITv: MAN 2019.04.03 Abszrakt metódus és absztrakt osztály. Gyakran előfordul a tervezés során, hogy egy osztály szintjén tudjuk, hogy valamilyen metódus

Részletesebben

Java Programozás 1. Gy: Java alapok. Ismétlés ++

Java Programozás 1. Gy: Java alapok. Ismétlés ++ Java Programozás 1. Gy: Java alapok Ismétlés ++ 24/1 B ITv: MAN 2018.02.18 Feladat Készítsünk egy komplett konzolos alkalmazást, mely generál egy számot 0 és 100 között (mindkét határt beleértve), feladatunk

Részletesebben

Az osztályok csomagokba vannak rendezve, minden csomag tetszőleges. Könyvtárhierarhiát fed: Pl.: java/util/scanner.java

Az osztályok csomagokba vannak rendezve, minden csomag tetszőleges. Könyvtárhierarhiát fed: Pl.: java/util/scanner.java Függvények, csomagok Csomagok Az osztályok csomagokba vannak rendezve, minden csomag tetszőleges számú osztályt tartalmazhat Pl.: java.util.scanner Könyvtárhierarhiát fed: Pl.: java/util/scanner.java Célja:

Részletesebben

Objektum Orientált Programozás. 5. JAVA osztályok 21/1B IT MAN

Objektum Orientált Programozás. 5. JAVA osztályok 21/1B IT MAN Objektum Orientált Programozás 5. JAVA osztályok 21/1B IT MAN B IT v: 2016.03.09 MAN Feladatok 1. Készítsen egy Alkalmazott osztályt - legyen név, kor és fizetés adata - legyen egy osztályszintű adattagja

Részletesebben

4. Gy: JAVA osztályok

4. Gy: JAVA osztályok Objektum Orientált Programozás 4. Gy: JAVA osztályok 25/1B IT MAN B IT v: 2016.02.24 MAN Feladatok 1. Készítsen egy Teglalap osztályt - legyen adattagja a két oldal tárolására (egészek) - legyen konstruktora,

Részletesebben

Java IX. telkezelés a Java-ban

Java IX. telkezelés a Java-ban Java IX. Kivétel telkezelés a Java-ban Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 11. 17. Java IX. Kivételkezelés JAVA9 / 1 A kivételkezel telkezelés célja Kivételes

Részletesebben

Java IX. telkezelés a Java-ban

Java IX. telkezelés a Java-ban Java IX. Kivétel telkezelés a Java-ban Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 11. 17. Java IX. Kivételkezelés JAVA9 / 1 A kivételkezel telkezelés célja Kivételes

Részletesebben

OOP: Java 11.Gy: Enumok, beágyazott osztályok. 13/1 B ITv: MAN

OOP: Java 11.Gy: Enumok, beágyazott osztályok. 13/1 B ITv: MAN OOP: Java 11.Gy: Enumok, beágyazott osztályok 13/1 B ITv: MAN 2019.04.24 ArrayList Rugalmas tömb A tömbök korlátai Fix méret, nem lehet menet közben megnövelni Ha túl nagyra választjuk, fölösleges helyfoglalás

Részletesebben

Kivételek kezelése (exception handling) Hibakezelés old style. Kivételkezelés

Kivételek kezelése (exception handling) Hibakezelés old style. Kivételkezelés Kivételek kezelése (exception handling) Hibakezelés old style class Szamolo { void szamol( String s, int i ) { int d; if (i!= 0) d = (i+1)/i; else if (s!= null) d = s.length(); else if (i > 10) // applikációs

Részletesebben

Abstract osztályok és interface-ek. 7-dik gyakorlat

Abstract osztályok és interface-ek. 7-dik gyakorlat Abstract osztályok és interface-ek 7-dik gyakorlat Abstract metódusok és osztályok Az OO fejlesztés során olyan osztályokat is kialakíthatunk, melyeket csak továbbfejlesztésre, származtatásra lehet használni,

Részletesebben

BME MOGI Gépészeti informatika 8.

BME MOGI Gépészeti informatika 8. BME MOGI Gépészeti informatika 8. 1. feladat Készítse beosztottak és vezetők munkahelyi adatait kezelő alkalmazást! A feladat megoldásához hozza létre a következő osztályokat! Beosztott osztály: adatmező

Részletesebben

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 jelzése

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 jelzése 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 jelzése Hiba Felhasználó butaságot csinál Speciális/abnormális számítási

Részletesebben

OOP: Java 6.Gy: Java osztályok. Definíció, static, túlterhelés

OOP: Java 6.Gy: Java osztályok. Definíció, static, túlterhelés OOP: Java 6.Gy: Java osztályok Definíció, static, túlterhelés 45/1 B ITv: MAN 2019.03.18 Feladat Készítsen egy Alkalmazott osztályt saját csomagban, név, kor és fizetés adatokkal. Legyen egy osztályszintű

Részletesebben

Java Programozás 5. Ea: OOP alapok. Abstract Javaságok

Java Programozás 5. Ea: OOP alapok. Abstract Javaságok Java Programozás 5. Ea: OOP alapok Abstract Javaságok 89/1 B ITv: MAN 2018.03.13 89/2 OOP alapelvek Adatok és a hozzájuk kapcsolódó tevékenységek egységbe zárása (encapsulation) Alapegység: osztály, melynek

Részletesebben

és az instanceof operátor

és az instanceof operátor Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában

Részletesebben

Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán

Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában

Részletesebben

Java bevezet o Kab odi L aszl o Kab odi L aszl o Java bevezet o

Java bevezet o Kab odi L aszl o Kab odi L aszl o Java bevezet o Miért Java? széleskörben elterjedt Micro Edition - beágyazott rendszerek, régi telefonok Standard Edition - PC, android ezen alapul Enterprise Edition - vállalati programok, web service-ek multiplatform

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 3. rész Tulajdonságok Indexelők Kivételkezelés Hallgatói tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendő anyag vázlatát

Részletesebben

OOP: Java 1.Gy: Java alapok

OOP: Java 1.Gy: Java alapok OOP: Java 1.Gy: Java alapok Eclipse alapok O O P Objektum Orientált Programozás 31/1 B ITv: MAN 2019.02.25 Feladat Írja meg a 4 alapműveletet megvalósító Kalkulátor programot Java nyelven. Az elvégzendő

Részletesebben

Helyes-e az alábbi kódrészlet? int i = 1; i = i * 3 + 1; int j; j = i + 1; Nem. Igen. Hányféleképpen lehet Javaban megjegyzést írni?

Helyes-e az alábbi kódrészlet? int i = 1; i = i * 3 + 1; int j; j = i + 1; Nem. Igen. Hányféleképpen lehet Javaban megjegyzést írni? A "java Villa -v" parancs jelentése: A java interpreter elindítja a Villa osztály statikus main metódusát, és átadja neki paraméterként a "-v" stringet. A java interpreter elindítja először a Villa osztály

Részletesebben

OOP: Java 7.Gy: Öröklődés, referenciák

OOP: Java 7.Gy: Öröklődés, referenciák OOP: Java 7.Gy: Öröklődés, referenciák 37/1 B ITv: MAN 2019.03.26 Öröklődés Egységbezárás (az egyik OOP alapelv) : az adatokat és rajtuk végzett műveleteket egy egységként kezeljük, ez az egység az osztály.

Részletesebben

Java VI. Egy kis kitérő: az UML. Osztály diagram. Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07.

Java VI. Egy kis kitérő: az UML. Osztály diagram. Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI. Öröklődés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI.: Öröklődés JAVA6 / 1 Egy kis kitérő: az UML UML: Unified Modelling Language Grafikus eszköz objektum

Részletesebben

Java Programozás 4. Gy: Java GUI. Tipper, MVC kalkulátor

Java Programozás 4. Gy: Java GUI. Tipper, MVC kalkulátor Java Programozás 4. Gy: Java GUI Tipper, MVC kalkulátor 15/1 B ITv: MAN 2018.03.10 1. Feladat: Tipper Készítsük el a tippelős programunk grafikus változatát. Az üzleti logika kódja megvan, a felület pedig

Részletesebben

Objektum Orientált Programozás. 6. JAVA öröklődés 30/1B IT MAN

Objektum Orientált Programozás. 6. JAVA öröklődés 30/1B IT MAN Objektum Orientált Programozás 6. JAVA öröklődés 30/1B IT MAN B IT v: 2016.03.16 MAN Feladatok Órai egyéni feladat (T: kb. 30 perc) Készítsen egy osztályt (Ember), melyben emberek nevét, magasságát és

Részletesebben

Programozási technológia

Programozási technológia Programozási technológia Osztályszintű elérés Kivételkezelés, Fájlkezelés Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. Osztályszintű elérés (statikusság) Az osztályban definiált attribútumok és műveletek

Részletesebben

Kivételkezelés, naplózás. Exception handling, logging

Kivételkezelés, naplózás. Exception handling, logging Kivételkezelés, naplózás Exception handling, logging Try-catch try { // Kódrészlet, amely kivételt eredményezhet catch (Exception1 object1 ) { // Az Exception1 kivétel kezelésének megfelelő kód catch (Exception2

Részletesebben

Osztályszintű elérés, kivételkezelés, fájlkezelés

Osztályszintű elérés, kivételkezelés, fájlkezelés Programozási, kivételkezelés, fájlkezelés Informatikai Kar Eötvös Loránd Tudományegyetem 1 Tartalom 1 2 3 4 2 (statikusság) Az osztályban definiált attribútumok és műveletek az osztályból példányosított

Részletesebben

Szoftvertechnolo gia gyakorlat

Szoftvertechnolo gia gyakorlat Szoftvertechnolo gia gyakorlat Dr. Johanyák Zsolt Csaba http://johanyak.hu 1. Dependency Injection (függőség befecskendezés) tervezési minta A tervezési minta alapgondolata az, hogy egy konkrét feladatot

Részletesebben

Java programozási nyelv 6. rész Java a gyakorlatban

Java programozási nyelv 6. rész Java a gyakorlatban Java programozási nyelv 6. rész Java a gyakorlatban Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. október A Java programozási nyelv Soós Sándor 1/16 Tartalomjegyzék

Részletesebben

Programozási nyelvek Java

Programozási nyelvek Java Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 13. előadás Throwable Error Exception RuntimeException IOException Saját (általában) Nem ellenörzött kivételek (Unchecked

Részletesebben

Programozási nyelvek Java

Programozási nyelvek Java Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 9. előadás Interface - típust vezet be, de osztálypéldány nem készíthető belőle (statikus típust ad) - több osztály is

Részletesebben

Széchenyi István Egyetem. Programozás III. Varjasi Norbert varjasin@sze.hu

Széchenyi István Egyetem. Programozás III. Varjasi Norbert varjasin@sze.hu Programozás III. Varjasi Norbert varjasin@sze.hu 1 A java virtuális gép (JVM) Képzeletbei, ideális számítógép. Szoftveresen megvalósított működési környezet. (az op. rendszer egy folyamata). Feladata:

Részletesebben

List<String> l1 = new ArrayList<String>(); List<Object> l2 = l1; // error

List<String> l1 = new ArrayList<String>(); List<Object> l2 = l1; // error Generics Egyszerűbb példák (java.util csomagból): public interface List { void add(e x); Iterator iterator(); public interface Iterator { E next(); boolean hasnext(); E - formális típusparaméter,

Részletesebben

Objektumorientált programozás Pál László. Sapientia EMTE, Csíkszereda, 2014/2015

Objektumorientált programozás Pál László. Sapientia EMTE, Csíkszereda, 2014/2015 Objektumorientált programozás Pál László Sapientia EMTE, Csíkszereda, 2014/2015 9. ELİADÁS Kivételkezelés (Exception handling) 2 Mi a kivétel (exception)? A kivétel, olyan hibás állapot vagy esemény, amely

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 3. rész Tulajdonságok Indexelık Kivételkezelés Hallgatói tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendı anyag vázlatát

Részletesebben

Java Programozás 11. Ea: MVC modell

Java Programozás 11. Ea: MVC modell Java Programozás 11. Ea: MVC modell 20/1 B ITv: MAN 2018.03.02 MVC Model-View-Controller A modell-nézet-vezérlő a szoftvertervezésben használatos szerkezeti minta. Az MVC célja elválasztani az üzleti logikát

Részletesebben

Programozási nyelvek II.: JAVA

Programozási nyelvek II.: JAVA Programozási nyelvek II.: JAVA 5. gyakorlat 2017. október 9-13. 5. gyakorlat Programozási nyelvek II.: JAVA 1 / 34 Az 5. gyakorlat tematikája Kivételkezelés alapjai Be és kimenet BufferedReader, Scanner

Részletesebben

Osztályok. construct () destruct() $b=new Book(); $b=null; unset ($b); book.php: <?php class Book { private $isbn; public $title;

Osztályok. construct () destruct() $b=new Book(); $b=null; unset ($b); book.php: <?php class Book { private $isbn; public $title; PHP5 objektumok 1 Osztályok class, new book.php: construct () destruct() $b=new Book(); törlés: $b=null; vagy unset ($b); -elnevezési konvenciók private $isbn; public $title; function

Részletesebben

Java programozási nyelv 4. rész Osztályok II.

Java programozási nyelv 4. rész Osztályok II. Java programozási nyelv 4. rész Osztályok II. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/17 Tartalomjegyzék

Részletesebben

Kivételkezelés a C++ nyelvben Bevezetés

Kivételkezelés a C++ nyelvben Bevezetés Kivételkezelés a C++ nyelvben Bevezetés Miskolci Egyetem Általános Informatikai Tanszék Kivételkezelés a C++ nyelvben CPP9 / 1 Hagyományos hibakezelés Függvény visszatérési értéke (paramétere) hátrányai:

Részletesebben

OOP: Java 5.Gy: Osztály, referencia, konstruktor

OOP: Java 5.Gy: Osztály, referencia, konstruktor OOP: Java 5.Gy: Osztály, referencia, konstruktor 36/1 B ITv: MAN 2019.03.10 Osztály fogalma A Circle osztály definíciója: public class Circle { private int cx; private int cy; private int rad; public Circle(int

Részletesebben

Programozás I. Második ZH segédlet

Programozás I. Második ZH segédlet Programozás I. Második ZH segédlet Ezen az oldalon: interfész létrehozás, megvalósítás; absztrakt osztály, metódus; belső osztály Interfész létrehozása: public interface InterfeszNeve { //Metódusok deklarációja

Részletesebben

Számítástechnika II. BMEKOKAA Előadás. Dr. Bécsi Tamás

Számítástechnika II. BMEKOKAA Előadás. Dr. Bécsi Tamás Számítástechnika II. BMEKOKAA153 5. Előadás Dr. Bécsi Tamás Kivételkezelés try Azon utasítások kerülnek ide, melyek hibát okozhatnak, kivételkezelést igényelnek catch( típus [név]) Adott kivételtípus esetén

Részletesebben

Java és web programozás

Java és web programozás Budapesti Műszaki Egyetem 2015. 02. 11. 2. Előadás Mese Néhány programozási módszer: Idők kezdetén való programozás Struktúrált Moduláris Funkcionális Objektum-orientált... Mese Néhány programozási módszer:

Részletesebben

OOP: Java 4.Gy: Java osztályok

OOP: Java 4.Gy: Java osztályok OOP: Java 4.Gy: Java osztályok. 36/1 B ITv: MAN 2019.03.02 Feladat Készítsen el egy Employee osztályt és egy Employee osztályt használó osztályt (EmpProgram). Az Employee osztálynak: van name és salary

Részletesebben

Java és web programozás

Java és web programozás Budapesti Műszaki Egyetem 2015. 04. 08. 9. Előadás Kivétel kezelés a kivétel (exception) egy esemény, mely futás közben megbontja a program normális futási folyamatát például kivétel dobódik amikor 0-val

Részletesebben

Globális operátor overloading

Globális operátor overloading Programozás II. 9. gyakorlat Operátor overloading 2: Unáris operátorok, globálisan megvalósított operátorok, > operátorok Kivételkezelés, IO library Globális operátor overloading Előző alkalommal

Részletesebben

BME MOGI Gépészeti informatika 4.

BME MOGI Gépészeti informatika 4. BME MOGI Gépészeti informatika 4. 1. feladat önálló feladatmegoldás Generáljon két 1 és 10 közötti véletlen egész számot, majd kiírja ezekre a számokra a tízes szorzótáblákat! Ha az első generált szám

Részletesebben

Pelda öröklődésre: import java.io.*; import java.text.*; import java.util.*; import extra.*;

Pelda öröklődésre: import java.io.*; import java.text.*; import java.util.*; import extra.*; Java osztály készítése, adattagok, és metódusok, láthatóság, konstruktor, destruktor. Objektum létrehozása, használata, öröklés. ( Előfeltétel 12. Tétel ) Az osztály egy olyan típus leíró struktúra, amely

Részletesebben

Osztályok. 4. gyakorlat

Osztályok. 4. gyakorlat Osztályok 4. gyakorlat Az osztály fogalma Az objektumok formai leírása, melyek azonos tulajdonsággal és operációkkal rendelkeznek. Osztályból objektum készítését példányosításnak nevezzük. Minden objektum

Részletesebben

Kalapácsvetés 2016 szöveges

Kalapácsvetés 2016 szöveges Kalapácsvetés 2016 Ebben a feladatban a 2016. évi nyári olimpiai játékokon az atlétika férfi kalapácsvetés döntőjének eredményeit kell feldolgoznia. A döntő 6 dobási sorozatból állt, de a 3. sorozat után

Részletesebben

Java programozási nyelv 5. rész Osztályok III.

Java programozási nyelv 5. rész Osztályok III. Java programozási nyelv 5. rész Osztályok III. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/20 Tartalomjegyzék

Részletesebben

Java VI. Miskolci Egyetem Általános Informatikai Tanszék. Utolsó módosítás: Ficsor Lajos. Java VI.: Öröklődés JAVA6 / 1

Java VI. Miskolci Egyetem Általános Informatikai Tanszék. Utolsó módosítás: Ficsor Lajos. Java VI.: Öröklődés JAVA6 / 1 Java VI. Öröklődés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI.: Öröklődés JAVA6 / 1 Egy kis kitérő: az UML UML: Unified Modelling Language Grafikus eszköz objektum

Részletesebben

Pénzügyi algoritmusok

Pénzügyi algoritmusok Pénzügyi algoritmusok A C++ programozás alapjai Tömbök (3. rész) Konstansok Kivételkezelés Tömbök 3. Többdimenziós tömbök Többdimenziós tömbök int a; Többdimenziós tömbök int a[5]; Többdimenziós tömbök

Részletesebben

Programozás I. Második ZH segédlet

Programozás I. Második ZH segédlet Programozás I. Második ZH segédlet Ezen az oldalon: interfész létrehozás, megvalósítás; absztrakt osztály, metódus; belső osztály Interfész létrehozása: public interface InterfeszNeve { //Metódusok deklarációja

Részletesebben

S ha kettészelik is: balfelöl belőle Valamivel mindig - Valamivel mindiq több marad. (Nyugat )

S ha kettészelik is: balfelöl belőle Valamivel mindig - Valamivel mindiq több marad. (Nyugat ) S ha kettészelik is: balfelöl belőle Valamivel mindig - Valamivel mindiq több marad. (Nyugat 1919. 1049-1050. 1.) A hetvenéves Eötvös Loránd köszöntésekor Alexander Bernád filozófus így jellemezte:...

Részletesebben

Java programozási nyelv 9. rész Kivételkezelés

Java programozási nyelv 9. rész Kivételkezelés Java programozási nyelv 9. rész Kivételkezelés Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/24 Tartalomjegyzék

Részletesebben

Programozási technológia

Programozási technológia Programozási technológia Bevezetés Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. Információk Képzés Programtervező Informatikus BSc, nappali tagozat, C szakirány Tárgykód: IP-17cPROGT1EG Előfeltétel

Részletesebben

Segédanyag: Java alkalmazások gyakorlat

Segédanyag: Java alkalmazások gyakorlat Segédanyag: Java alkalmazások gyakorlat Készítette: Szabó Attila 2010/2011-2 félév, 11. gyakorlat (az előző 2 gyak közül az egyiken ZH volt, a másik szünet miatt elmaradt) 1 JAR fájl készítés A JAR (Java

Részletesebben

Programozás I. 5. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Programozás I. 5. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar Programozás I. 5. gyakorlat 1 Objektumorientáltság Egységbezárás és információ elrejtése (absztrakt adattípus) Adatok és rajtuk végzett műveletek egységbezárása (osztályok írása, múlt hét) Öröklődés Polimorfizmus

Részletesebben

JAVA PROGRAMOZÁS 3.ELŐADÁS

JAVA PROGRAMOZÁS 3.ELŐADÁS Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 3.ELŐADÁS 2014-2015 tavasz Polimorfizmus, absztrakt osztályok, interfészek 2 Példa - Hengerprogram 3 Példa - Hengerprogram 4 Példa - Hengerprogram

Részletesebben

A szemantikus elemzés helye. A szemantikus elemzés feladatai. A szemantikus elemzés feladatai. Deklarációk és láthatósági szabályok

A szemantikus elemzés helye. A szemantikus elemzés feladatai. A szemantikus elemzés feladatai. Deklarációk és láthatósági szabályok A szemantikus elemzés helye Forrásprogram Forrás-kezelő (source handler) Lexikális elemző (scanner) A szemantikus elemzés feladatai Fordítóprogramok előadás (A, C, T szakirány) Szintaktikus elemző (parser)

Részletesebben

Java és web programozás

Java és web programozás Budapesti M szaki Egyetem 2013. szeptember 25. 3. El adás User public class User { private String realname_; private String nickname_; private String password_; public User(String realname, String nickname)

Részletesebben

Kivételek, kivételkezelés a C++ nyelvben

Kivételek, kivételkezelés a C++ nyelvben 2009. Kivételek, kivételkezelés a C++ nyelvben Haladó C++ programozás Kurucz Attila ELTE - IK 2009.06.09. Tartalomjegyzék Tartalomjegyzék... 2 Mi a kivételkezelés?... 3 Alapfogalmak... 3 Kivétel... 3 Try

Részletesebben

Objektumorientált programozás C# nyelven III.

Objektumorientált programozás C# nyelven III. Objektumorientált programozás C# nyelven III. Kivételkezelés Tulajdonságok Feladatok Készítette: Miklós Árpád Dr. Kotsis Domokos Hallgatói tájékoztató A jelen bemutatóban található adatok, tudnivalók és

Részletesebben

Java gyakorlat feladatai e s megolda sai (2014.04.10)

Java gyakorlat feladatai e s megolda sai (2014.04.10) Java gyakorlat feladatai e s megolda sai (2014.04.10) 1. Feladat Számítsuk ki a Fibonacci sorozat első 20 tagját! / Fibonacci számsorozat tagjait kiszámoló, egyetlen osztályból álló program @author Bence

Részletesebben

3. Osztályok II. Programozás II

3. Osztályok II. Programozás II 3. Osztályok II. Programozás II Bevezető feladat Írj egy Nevsor osztályt, amely legfeljebb adott mennyiségű nevet képes eltárolni. A maximálisan tárolható nevek számát a konstruktorban adjuk meg. Az osztályt

Részletesebben

Informatika terméktervezőknek

Informatika terméktervezőknek Informatika terméktervezőknek C# alapok Névterület (namespace) using Osztály (class) és Obejtumok Metódus (function, procedure, method) main() static void string[] arg Szintaxis // /* */ \n \t Névadások

Részletesebben

Programozási nyelvek Java

Programozási nyelvek Java Programozási nyelvek Java 2. gyakorlat Függvények Általános prototípus Módosítószavak Láthatóság: public, protected, private. Ha nem definiált, akkor úgynevezett package-private láthatóság. Lehet abstract

Részletesebben

1. Jelölje meg az összes igaz állítást a következők közül!

1. Jelölje meg az összes igaz állítást a következők közül! 1. Jelölje meg az összes igaz állítást a következők közül! a) A while ciklusban a feltétel teljesülése esetén végrehajtódik a ciklusmag. b) A do while ciklusban a ciklusmag után egy kilépési feltétel van.

Részletesebben

Programozási nyelvek Java

Programozási nyelvek Java Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 8. előadás Öröklődés - megnyitunk egy osztályt egy másik előtt zárt egységeket szeretünk készíteni (láthatósági kérdés:

Részletesebben

OOP #14 (referencia-elv)

OOP #14 (referencia-elv) OOP #14 (referencia-elv) v1.0 2003.03.19. 21:22:00 Eszterházy Károly Főiskola Információtechnológia tsz. Hernyák Zoltán adj. e-mail: aroan@ektf.hu web: http://aries.ektf.hu/~aroan OOP OOP_14-1 - E jegyzet

Részletesebben

Segédanyag: Java alkalmazások gyakorlat

Segédanyag: Java alkalmazások gyakorlat Segédanyag: Java alkalmazások gyakorlat Készítette: Szabó Attila 2009/2010-2 félév, 12. gyakorlat 1 Távoli metódushívás Java-ban (RMI) Java-ban a távoli metódushívás ( Remote Method Invocation, RMI) egy

Részletesebben

Vé V g é r g e r h e a h j a tá t s á i s s z s ál á ak a Runnable, Thread

Vé V g é r g e r h e a h j a tá t s á i s s z s ál á ak a Runnable, Thread Végrehajtási szálak Runnable, Thread Végrehajtási szálak Java-ban A Java program az operációs rendszer egy folyamatán (process) belül fut. A folyamat adat és kód szegmensekből áll, amelyek egy virtuális

Részletesebben

Öröklés és Polimorfizmus

Öröklés és Polimorfizmus Öröklés és Polimorfizmus Egy létező osztályból egy (vagy több) újat készítünk A létező osztályt ősnek, az újakat utódnak nevezzük Az utódok öröklik az ős minden tagját Az utódok az öröklött tagokat újakkal

Részletesebben

Java Programozás 3. Gy: Java GUI. Swing, AWT

Java Programozás 3. Gy: Java GUI. Swing, AWT Java Programozás 3. Gy: Java GUI Swing, AWT 35/1 B ITv: MAN 2018.02.25 Feladat Készítsük el az Emp osztály kezelő programját úgy, hogy ArrayList-et (listatömb, tömblista, rugalmas tömb) használunk. A java.util.arraylist

Részletesebben

Segédanyag: Java alkalmazások gyakorlat

Segédanyag: Java alkalmazások gyakorlat Segédanyag: Java alkalmazások gyakorlat Készítette: Szabó Attila 2009/2010-2 félév, 2. gyakorlat 1 Osztályok és objektumok default, public, protected, private láthatóság a metódusokra és adattagokra (első

Részletesebben

Programozás II. labor

Programozás II. labor Programozás II. labor 1. rész Programozási tételek Öröklődés Interfészek Eseménykezelés Kivételkezelés Visszalépéses keresés Programozás II. Programozási tételek OOP alapok ismétlése Öröklődés Öröklődés

Részletesebben

Programozás I. 3. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Programozás I. 3. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar Programozás I. 3. gyakorlat Szegedi Tudományegyetem Természettudományi és Informatikai Kar Antal Gábor 1 Primitív típusok Típus neve Érték Alap érték Foglalt tár Intervallum byte Előjeles egész 0 8 bit

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 2. rész Öröklés és többalakúság Nemvirtuális metódusok, elrejtés Virtuális metódusok, elrejtés Típuskényszerítés, az is és as operátorok Absztrakt osztályok, absztrakt

Részletesebben

INFORMATIKAI ALAPISMERETEK

INFORMATIKAI ALAPISMERETEK Informatikai alapismeretek középszint 1021 ÉRETTSÉGI VIZSGA 2011. május 13. INFORMATIKAI ALAPISMERETEK KÖZÉPSZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ NEMZETI ERŐFORRÁS MINISZTÉRIUM

Részletesebben

Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - I. / 1

Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - I. / 1 Angster Erzsébet: OO tervezés és programozás, Java II. kötet alapján Készítette: Andor Gergely Ellenőrizte: Dr. Szelezsán János Jóváhagyta: Lengyel Zsuzsánna Gábor Dénes Főiskola (IAI) Programozási technológia

Részletesebben

Bánsághi Anna anna.bansaghi@mamikon.net

Bánsághi Anna anna.bansaghi@mamikon.net ESEMÉNYVEZÉRELT PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 2. ELŐADÁS - C# ÁTTEKINTÉS - 2 2015 Bánsághi Anna 1 of 64 TEMATIKA I. C# ÁTTEKINTÉS II. WPF III. Modern UI 2015 Bánsághi Anna 2 of 64

Részletesebben

OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek

OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN vizsgatételek 1. Az objektumorientált programozás szemlélete, az objektum fogalma 2. Az objektumorientált programozás alapelvei 3. A Java nyelv története, alapvető

Részletesebben

Java és web programozás

Java és web programozás Budapesti M szaki Egyetem 2013. szeptember 18. 2. El adás Komplex szám public class Complex { private float repart_; private float impart_; public Complex() { repart_ = 0; impart_ = 0; public Complex(float

Részletesebben

Java Programozás 9. Gy: Java alapok. Adatkezelő 5.rész

Java Programozás 9. Gy: Java alapok. Adatkezelő 5.rész Java Programozás 9. Gy: Java alapok Adatkezelő 5.rész 15/1 B ITv: MAN 2018.04.22 A Keresés funkció Programlogika: 1. A keresés az etm táblamodellben fog keresni, és a találat rekordokat átmásolja egy másik

Részletesebben

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 2.ELŐADÁS. Objektumorientált programozás 2015-2016

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 2.ELŐADÁS. Objektumorientált programozás 2015-2016 Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 2.ELŐADÁS 2015-2016 Objektumorientált programozás OOP PHP-ben 2 A PHP az 5.0-as verziójától megvalósítja az OO eszközrendszerét OO eszközök:

Részletesebben

BME MOGI Gépészeti informatika 1.

BME MOGI Gépészeti informatika 1. BME MOGI Gépészeti informatika 1. 1. feladat Végezze el a következő feladatokat! Olvassa be a nevét és írjon üdvözlő szöveget a képernyőre! Generáljon két 1-100 közötti egész számot, és írassa ki a hányadosukat

Részletesebben

Programozási nyelvek II. JAVA EA+GY 1. gyakolat

Programozási nyelvek II. JAVA EA+GY 1. gyakolat Programozási nyelvek II. JAVA EA+GY 1. gyakolat EÖTVÖS LORÁND TUDOMÁNYEGYTEM INFORMATIKAI KAR PROGRAMOZÁSI NYELVEK ÉS FORDÍTÓPROGRAMOK TANSZÉK 2017/2018. őszi félév Tartalom 1 Amit tudni kell a félévről

Részletesebben

JAVA PROGRAMOZÁS 2.ELŐADÁS

JAVA PROGRAMOZÁS 2.ELŐADÁS Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 2.ELŐADÁS 2014-2015 tavasz Tömbök, osztályok, objektumok, konstruktorok Tömbök 2 Referencia típusú változó Elemtípus Primitív Referencia: osztály,

Részletesebben

Mi a különbség az extends és az implements között. Mikor melyiket kell használni? Comperable-t megvalósító oasztályokban össze lehet hasonlitani

Mi a különbség az extends és az implements között. Mikor melyiket kell használni? Comperable-t megvalósító oasztályokban össze lehet hasonlitani Mi a legabsztraktabb típus a JAVA-ban? Object Mikor preferált interface-ek használata a konkrét típusok helyett? Ha egy osztály több interfacet is használhasson, vagy ha fvek implementálását a az osztályra

Részletesebben

hiányzott szeptemberben vagy A tanuló nem hiányzott szeptemberben szöveget

hiányzott szeptemberben vagy A tanuló nem hiányzott szeptemberben szöveget Hiányzások Ebben a feladatban egy általános iskola 2017 szeptemberi hiányzásai tartalmazó szövegfájlt kell feldolgoznia. Az adatok a szeptember.csv állomány tartalmazza. Az állomány egy sorában egy tanuló

Részletesebben

Osztálytervezés és implementációs ajánlások

Osztálytervezés és implementációs ajánlások Osztálytervezés és implementációs ajánlások Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 04. 24. Osztálytervezés és implementációs kérdések OTERV / 1 Osztály tervezés Egy nyelv

Részletesebben

Se S r e ial a iza z t a ion o n (in n Ja J v a a v ) a Szerializáció

Se S r e ial a iza z t a ion o n (in n Ja J v a a v ) a Szerializáció Serialization (in Java) Szerializáció Java Serialization API Standard eljárás az objektumok állapotának adatfolyamba történő kiírására (elmentésére egy bájtszekvenciába), és visszatöltésére Perzisztencia

Részletesebben

A függvények névvel rendelkező utasításcsoportok, melyeknek információkat adhatunk át, és van egy visszatérési értékük.

A függvények névvel rendelkező utasításcsoportok, melyeknek információkat adhatunk át, és van egy visszatérési értékük. Függvények A függvények névvel rendelkező utasításcsoportok, melyeknek információkat adhatunk át, és van egy visszatérési értékük. Mint egy dzsinn: Hogyan is "használunk" egy dzsinnt? megszólítjuk megmondjuk,

Részletesebben

Osztálytervezés és implementációs ajánlások

Osztálytervezés és implementációs ajánlások Osztálytervezés és implementációs ajánlások Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 04. 24. Osztálytervezés és implementációs kérdések OTERV / 1 Osztály tervezés Egy nyelv

Részletesebben

Programozási nyelvek II. JAVA

Programozási nyelvek II. JAVA Programozási nyelvek II. JAVA 8. gyakorlat 2017. november 6-10. Általános tudnivalók A feladatmegoldás során fontos betartani az elnevezésekre és típusokra vonatkozó megszorításokat, illetve a szövegek

Részletesebben