Ú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?:))
- Egyéni arckép 2. lépés: ARCKÉPSZERKESZTŐ
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- PlayStation 5
- ASUS routerek
- Milyen processzort vegyek?
- Borotva, szakállnyíró, szakállvágó topic
- Horgász topik
- Ford topik
- És akkor a memóriapánik után beköszöntött a HDD-pánik
- AMD Navi Radeon™ RX 7xxx sorozat
- További aktív témák...
- HIBÁTLAN iPhone 13 mini 128GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS3050
- MacBook Pro 14 2021, M1 Pro 10 core, 32 GB RAM, 16 core GPU, 1 TB SSD 27% ÁFÁS (0303AR-4046)
- AKCIÓ! Dell Latitude 5455 14 FHD+ üzleti notebook - Qualcomm X Plus X1 16GB DDR5 512GB SSD W11
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! Gigabyte M27UA 27 160Hz IPS UHD 4K 1ms monitor garanciával hibátlan működéssel
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi

