Hirdetés
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- Elektromos rásegítésű kerékpárok
- urandom0: Száműztem az AI-t az életemből
- droidic: [Memory Leak] Az agy defragmentálása
- GoodSpeed: 3I/Atlas: Üstökös vagy idegen civilizáció űrhajója?
- sziku69: Szólánc.
- GoodSpeed: Harcban az adathalászokkal - az AI tud segíteni?
- Meggyi001: Csak úgy... ki kellett írnom magamból...
- Toma
Ú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?:))
- Latitude 9430 27% 14" FHD+ IPS i5-1245U 32GB 512GB NVMe ujjlolv IR kam gar
- 0 Perces! WD Black SN850X 4TB SSD! 7300/6600MB /S
- Intel XMP és AMD Expo Compatible! Corsair Vengeance RGB DDR5 2x32GB (64GB) Kit!
- ASUS ROG STRIX RTX 3060 gamer PC i5-11600K, 1TB NVMe, dobozokkal
- Eladó LG 49SJ810V 49" SUPER UHD NANOCELL HDR10 4K TV 124 cm 120hz
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- GYÖNYÖRŰ iPhone 13 Mini 128GB Starlight-1 ÉV GARANCIA -Kártyafüggetlen, MS4182, 94% Akkumulátor
- BESZÁMÍTÁS! ASUS H81M-A H81 chipset alaplap garanciával hibátlan működéssel
- LG 27GR95QE - 27" OLED / QHD 2K / 240Hz & 0.03ms / NVIDIA G-Sync / FreeSync Premium / HDMI 2.1
- Tablet felvásárlás!! Samsung Galaxy Tab A8, Samsung Galaxy Tab A9, Samsung Galaxy Tab S6 Lite
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

