Hirdetés
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Asszociációs játék. :)
- Brogyi: CTEK akkumulátor töltő és másolatai
- MasterDeeJay: Comet lake (10gen) és DDR3 - mert ilyet is lehet!
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- talmida: My Art II.
- Luck Dragon: MárkaLánc
Új hozzászólás Aktív témák
-
robisz
senior tag
válasz
loszerafin
#772
üzenetére
Szia!
Az enum típusra úgy érdemes gondolni mint egy sima osztályra.
Annyi a különbség, hogy ebből az osztályból közvetlenül sosem hozunk
létre példányokat, csak az előre definiált ''konstansokat'' használhatjuk.
A példában tehát létrejön egy Day ''osztály'' és annak a 7 példánya (SUNDAY,
MONDAY, stb...)
Legegyszerűbb formában tehát az enum így nézne ki:
enum Day {
SUNDAY,
MONDAY,
TUESDAY,
WEDNESDAY,
THURSDAY,
FRIDAY,
SATURDAY;
}
Mint minden sima osztályban az enum-ban is írhatunk metódusokat, tárolhatunk
egyéb adatokat.
Alapból a toString() metódus a konstans nevével megegyező string-et ad vissza,
tehát a System.out.println(Day.MONDAY) eredménye ''MONDAY''.
A te példádban az enum-ban tárolunk egy dayname string-et is. Itt jön be
a képbe a konstruktor szerepe. Igaz te kivülről sosem hivod közvetlenül a
konstruktor-t, de a SUNDAY(''Sunday'') sor az enumban valójában egy konstruktor
hívást jelent, azaz a ''Sunday'' string eltárolodik a dayname változóba.
A toString metódust is felüldefiniálódik a te példádban, mégpedig úgy, hogy ezt a
dayname String-et adja vissza. Igy a System.out.println(Day.MONDAY) eredménye
''Monday'' lesz ''MONDAY'' helyett.
Azt hogy milyen adatokat tárolsz az enum-ben és milyen konstruktorokat írsz
te döntöd el, csak a konstansok felsorolásánal (SUNDAY, MONDAY stb) a megfelelő
számú és típusú paramétert kell átadni.
[Szerkesztve]
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- 278 - Lenovo Legion Pro 7 (16IAX10H) - Intel Core U9 275HX, RTX 5080
- 277 - Lenovo Legion Pro 7 (16IAX10H) - Intel Core U9 275HX, RTX 5080
- ultimea nova s90 7.1 4 körübelül 1-éves !!!!!
- 276 - Lenovo Yoga Pro 9 (16IAH10) - Intel Core U9 285H, RTX 5070 (multitouch)
- BONTATLAN Apple MacBook Air 13" M4 10CPU / 8GPU / 16GB RAM / 256 GB + 3 Év garancia
- Kingston FURY Beast 64GB (2x32GB) DDR4 3200MHz KF432C16BBK2/64 RAM
- 27% - Corsair Elgato Stream Deck Mini
- HIBÁTLAN iPhone 14 128GB Starlight-1 ÉV GARANCIA - Kártyafüggetlen, MS4650
- 5G LTE! Microsoft Surface Pro 8 i7-1185G7 16GB 512GB 1 év garancia
- LG UltraGear 32GS94UX-B OLED Monitor! 3840x2160 / 480Hz / 0.03ms / G-Sync / FreeSync! BeszámítOK
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
