Informatika4-2017/Gyakorlat8

A MathWikiből
(Változatok közti eltérés)
(Új oldal, tartalma: „== Elõadások == Nézzük át elõször ezeket az elõadásokat: * [http://math.bme.hu/~kkovacs/webprog2015/WebprogEA3.pdf A memóriaképrõl] * [http://math.bme.hu/…”)
 
25. sor: 25. sor:
  
 
* Írjátok át a felhasználórendszert, hogy tömbök helyett '''ArrayList'''eket használjon.
 
* Írjátok át a felhasználórendszert, hogy tömbök helyett '''ArrayList'''eket használjon.
* Írjátok át a '''PersonalInfo''' osztály, hogy Stringhez Stringet rendelõ '''HashMap'''ben tárolja az adatokat.
+
* Írjátok egy '''PersonalInfo''' osztály, ami Stringhez Stringet rendelõ '''HashMap'''ben tárolja a User-ek adatait.
 
<java>
 
<java>
 
HashMap<String, String> hm = new HashMap<String, String>();
 
HashMap<String, String> hm = new HashMap<String, String>();
 
</java>
 
</java>
 +
* Minden User-nek legyen egy ilyen '''PersonalInfo'''-ja.
 
* Legyen egy statikus '''HashSet''' adattagja a '''PersonalInfo''' osztálynak, amiben tárolva vannak a lehetséges tulajdonságok (a '''HashMap''' lehetséges kulcsai).
 
* Legyen egy statikus '''HashSet''' adattagja a '''PersonalInfo''' osztálynak, amiben tárolva vannak a lehetséges tulajdonságok (a '''HashMap''' lehetséges kulcsai).
 
* Úgy mûködjön az utóbb említett '''HashSet''', hogy amikor új tulajdonságot adunk hozzá egy emberhez, akkor automatikusan rakja bele a '''HashSet'''be a tulajdonságot, ha még nem tartalmazta eddig.
 
* Úgy mûködjön az utóbb említett '''HashSet''', hogy amikor új tulajdonságot adunk hozzá egy emberhez, akkor automatikusan rakja bele a '''HashSet'''be a tulajdonságot, ha még nem tartalmazta eddig.
* Ez azt is jelenti, hogy mostantól a tulajdonság hozzáadása a '''PersonalInfo'''hoz (és ezáltal egy '''User'''hez) egy metódussal mûködjön amiben csak a kulcs és értéket kell megadni.
+
* Ez azt is jelenti, hogy a tulajdonság hozzáadása a '''PersonalInfo'''hoz (és ezáltal egy '''User'''hez) egy metódussal mûködjön amiben csak a kulcs és értéket kell megadni.

A lap 2017. október 30., 13:07-kori változata

Tartalomjegyzék

Elõadások

Nézzük át elõször ezeket az elõadásokat:

Interface gyakorló feladatok

Síkidomok

Készíts egy Mesurable interface-t, amink az egyetlen metódusa a weight, ami double-ben az alakzat területét adja vissza.

Készítsd el a Teglalap, Kor, Haromszog osztályokat, úgy hogy mindegyk impementálja ezt az interface-t. Majd írj egy hasonló tesztet rá, mint amilyen elõadáson is volt.

Repülõgépek

Két interface: Passanger, Freighter, az elsõ az utasszállító, ami azt tudja, hogy visszaadja az utasok számát, a második a csomagszállító, ami visszaadja a csomagok súlyát.

Legyen 3 féle repülõgép, egy-egy amelyik csak Passanger vagy Freighter-t implementál, a 3. pedig mindkettõt.

Írjátok meg értelmesen ezeket az osztályokat (utasszállítóban adattag az utasok száma, csomagszállítóban a csomagok súlya pl). Majd teszteljétek a korábbi módon.

Hasznos feladat

  • Írjátok át a felhasználórendszert, hogy tömbök helyett ArrayListeket használjon.
  • Írjátok egy PersonalInfo osztály, ami Stringhez Stringet rendelõ HashMapben tárolja a User-ek adatait.
HashMap<String, String> hm = new HashMap<String, String>();
  • Minden User-nek legyen egy ilyen PersonalInfo-ja.
  • Legyen egy statikus HashSet adattagja a PersonalInfo osztálynak, amiben tárolva vannak a lehetséges tulajdonságok (a HashMap lehetséges kulcsai).
  • Úgy mûködjön az utóbb említett HashSet, hogy amikor új tulajdonságot adunk hozzá egy emberhez, akkor automatikusan rakja bele a HashSetbe a tulajdonságot, ha még nem tartalmazta eddig.
  • Ez azt is jelenti, hogy a tulajdonság hozzáadása a PersonalInfohoz (és ezáltal egy Userhez) egy metódussal mûködjön amiben csak a kulcs és értéket kell megadni.
Személyes eszközök