a (1)
DESCRIPTION
A (1)TRANSCRIPT
Gábor Dénes Főiskola Programozás Technológia II.
Név:____________________ Neptun kód:_______________ Dátum:___________A gyakorlati feladat megoldásait, kérem küldje a [email protected] email címre. A feladatot tömörítse be és neptunkód_nev_csoport_dátum.kiterjesztes formában, mellékletként küldje el, az elküldött levél tárgyában ugyanez szerepeljen. A kitöltendő feladatokat olvashatóan töltse ki. Nem kötelező a megadott sorrendben megoldani a feladatokat, először olvassa át, majd azt oldja meg azt a feladatot, amit a legjobban és leggyorsabban tud megoldani, majd azokat vegye sorba amelyek lassabban illetve nehezebben mennek!
1. Egészítse ki az osztály definíciót és a kérdéses elemet határozza meg. A dőlt betűs rész meghatározásra vár (mit jelent, mi fogalom lényege, mikor használjuk a Java nyelvben, illetve az OOP elvek szerint) A vastagon szedett részek helyére egy-egy Java kulcsszót kell írni.
public a Osztaly b OsOsztaly c Einterfesz, Minterfesz{ Osztaly(){
// kódrészlet}
}
public …………………………………………………………………………………………………………………………………
a …………………………………………………………………………………………………………………………………
b …………………………………………………………………………………………………………………………………
c …………………………………………………………………………………………………………………………………
Osztaly() …………………………………………………………………………………………………………………………………
Elérhető pontszám p Ebből elért ……………p
A pontozásnál figyelembe kell venni a válasz helyességét, ha indoklás van az indoklás lényegi tartalmát. Nem lehet általánosságokat megfogalmazni, nem lehet jó válasz hibás indoklás páros, nem lehet rossz válasz jó példa párosítás. Nem írhatja 5 ember egyszerre példának, hogy az Interfész a bank automatákban található.
2. Mi az eredménye az alábbi kódnak? Egy válasz lehetséges!
public class Nyuszik {static int darab = 0;Nyuszik() {
while(darab < 10) new Nyuszik(++darab);}Nyuszik(int x) { super(); }public static void main(String[] args) {
new Nyuszik(); new Nyuszik(darab); System.out.println(darab++);}
}
a. 9b. 10c. 11d. Futás időben keletkező hiba
Elérhető pontszám p Ebből elért ……………pA pontozásnál figyelembe kell venni a válasz helyességét. Indoklásnak helye nincs!
1
Gábor Dénes Főiskola Programozás Technológia II.
Név:____________________ Neptun kód:_______________ Dátum:___________
3. Készítse el az alábbi feladatot!
i) Csináljon egy interface-t, amely egy síkidom területét, és kerületének metódusait tartalmazza.
ii) Csináljon egy absztrakt osztályt, amelyben el van készítve a kört reprezentáló osztály sugarának bekérése.
iii) Készítsen egy kört reprezentáló osztályt. Az osztályt a programozó legyen képes inicializálni a kör középpontjának koordinátáival és a sugarával, valamint csak a sugár megadásával (ilyenkor a kör origó középpontú). Legyen olyan metódus, amely kiírja a kör adatait (x,y,r) alakban (gondoljunk a toString() metódusra). Az osztálynak legyen olyan metódusa, amely a kör területét és kerületét is kiszámolja.
iv) Készítsen egy futtatható osztályt, amely 2 véletlen szerűen előállított körre kiszámítja a kerületet és a területet.
v) Készítsen egy grafikus felületet, ahol a sugarat fel lehet vinni és kiírja a területet és kerületet a felületre a program.
Elérhető pontszám p Ebből elért ……………p
A pontozásnál figyelembe kell venni a válasz helyességét, ha indoklás van az indoklás lényegi tartalmát. Nem lehet általánosságokat megfogalmazni, nem lehet jó válasz hibás indoklás páros, nem lehet rossz válasz jó példa párosítás. Nem írhatja 5 ember egyszerre példának, hogy az Interfész a bank automatákban található
Elérhető összpontszám p Ebből elért ……………p Teljesítménye …………..%
2
Gábor Dénes Főiskola Programozás Technológia II.
Név:____________________ Neptun kód:_______________ Dátum:___________
Részletese értékelő:
1. Feladat
public …………………………………………………………………………………………………………………………………
a …………………………………………………………………………………………………………………………………
b …………………………………………………………………………………………………………………………………
c …………………………………………………………………………………………………………………………………
Osztaly() …………………………………………………………………………………………………………………………………
2. Feladata. ArrayList<Ember> e = new ArrayList();
………………………………………………………………………………………………………………………………b. import javax.swing.*;
………………………………………………………………………………………………………………………………
c. class A{
………………………………………………………………………………………………………………………………
d. public int void metodus()
……………………………………………………………………………………………………………………………………3. Feladat
a. 9b. 10c. 11d. Futás időben keletkező hiba
4.a. ………………………………………………………………………………………………………………………………
b. ………………………………………………………………………………………………………………………………
c. ………………………………………………………………………………………………………………………………
d. ………………………………………………………………………………………………………………………………
e. ………………………………………………………………………………………………………………………………
f. ………………………………………………………………………………………………………………………………
3
Gábor Dénes Főiskola Programozás Technológia II.
Név:____________________ Neptun kód:_______________ Dátum:___________4. Számítógépen megoldandó feladat, kérem olvassa el figyelmesen. A IFizetéstKap interface-t és a többi osztályt, amelyet megemlít a feladat, akkor és csak akkor fogadom el, ha ennek a feladatban szereplő nevét használják (ékezeteket el lehet hagyni), helyette ne írjunk IFizetés, IVakamiinterface-t.Ellenőrzések nem szükségesek, 0 val való osztás stb. A feladatot a következő formában küldjék:neptunkód_nev_csoport_dátum.zip vagy neptunkód_nev_csoport_dátum.rar , a tárgyban ugyanez a tartalom legyen, természetesen a tárgyban nem szükséges a „.zip” vagy a „.rar” megjelölés.
Készítsen egy Személy nevű osztályt az alábbiak szerint:• Kívülről el nem érhető mezőkben tárolja a személy neptunkódját és nevét• Getter/setter metódusokat készítsen a neptunkód, és a név példányszintű változókhoz.
Készítse el a Hallgató osztályt a Személy osztály leszármazottjaként:• A hallgató jegyeinek tárolására vegyen fel egy ArrayList osztályt • Rendelkezzen konstruktorral, ami egy név és neptun kód alapján példányosít • Rendelkezzen egy Jegybeírás metódussal, aminek paramétere a beírandó jegy, amelyet az
ArrayList be beír.Legyen a Jegybeírás metódusnak olyan változata is, amely több jegyet ír egyszerre.
• Az osztály Átlag metódusának visszatérési értéke legyen a jegyek átlaga Készítse el az Oktató osztályt a Személy leszármazottjaként:
• Egészítse ki egy mezővel, (tanításideje) ami tárolja, hogy az oktató mióta tanít (években = > egész szám)
• Rendelkezzen neptunkód, név, tanításideje paramétereket váró konstruktorral • Az osztály rendelkezzen egy statikus változóval, ami tárolja, hogy mennyivel növekszik egy
tanár fizetése évenként Statikus getter/setter metódusokkal legyen lehetőség ehhez hozzáférniEgészítse ki az osztálykönyvtárt az alábbiakkal:
• Készítsen egy IFizetéstKap interfészt, ami definiál egy Fizetése nevű, paraméter nélküli, egész számot visszaadó műveletet
• Valósítsa meg a Hallgató osztály ezt az interfészt:A Fizetése metódus visszatérési értéke legyen (átlag * 5000)
• Valósítsa meg az Oktató osztály ezt az interfészt:A Fizetés metódus visszatérési értéke itt (évek száma * 6000) Készítsen egy olyan osztályt az elkészült osztályok kipróbálására, amellyel lehetőség van az alábbiakra ( nem kell konzolról beolvasni az adatokat elég, ha simán ebben az osztályban a metóduson keresztül megadja):
• Felhasználó által megadott adatok alapján Hallgató és Oktató objektumok létrehozása, és ezek tárolása egy közös adatszerkezetben (ArrayList/HashMap)
• Neptun kód megadása után, ha az ahhoz tartozó személy hallgató, legyen lehetőség új jegy beírására (ha nem hallgató, akkor a program ezt jelezze)
Készítsen egy Grafikus felületet, ahol megadhatja az Oktató neptun kódját, nevét. Egy gombot, aminek hatására a beírt adatokat egy ArrayList-ben eltárolja. Az ArrayList tartalmát minden adat hozzáadás után a KONZOLRA írja ki.
Elérhető összpontszám 100p Ebből elért ……………p Teljesítménye …………..%
4