- Luck Dragon: Asszociációs játék. :)
- Kókuszdió: Tápegység – hova jutottunk 5 év alatt?
- Elektromos rásegítésű kerékpárok
- mefistofeles: Az elhízás nem akaratgyengeség!
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- Geri Bátyó: Régi VGA, HDMI és a felbontás
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- KISDUCK: Diétás kaja tipp
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- sziku69: Fűzzük össze a szavakat :)
Ú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?:))
- Spórolós topik
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Autós topik
- Hobby elektronika
- Milyen okostelefont vegyek?
- Projektor topic
- Hosszú premier előzetest kapott az Arknights: Endfield
- Megtartotta Európában a 7500 mAh-t az Oppo
- Napelem
- Megkönnyítette az iPhone az androidos átköltözést
- További aktív témák...
- Kingston 16GB DDR5 5600MHz CL46 - Új, bontatlan, több darab - Eladó!
- Corsair VENGEANCE RGB 2x16GB DDR5 6400MHz CL32 - Új, bontatlan - Eladó!
- Corsair VENGEANCE RGB 2x16GB DDR5 6200MHz CL36 - Új, bontatlan - Eladó!
- Corsair VENGEANCE RGB 2x16GB DDR5 6000MHz CL36 - Új, bontatlan - Eladó!
- Chieftec proton 750w full moduláris
- Lenovo Yoga 7 2-in-1 OLED Ryzen 7 8840HS 16GB /1 TB SSD/ gari 10 hónap
- Azonnali készpénzes GAMER / üzleti notebook felvásárlás személyesen / csomagküldéssel korrekt áron
- MacBook Air 15" (M3, 8 GB RAM, 512 GB SSD)
- Samsung Galaxy A20e 32GB, Kártyafüggetlen, 1 Év Garanciával
- Samsung Galaxy A35 5G / 8/256GB / Kártyafüggetlen / 12Hó Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs

