Kodėl enum konstruktorius yra privatus?
Kodėl enum konstruktorius yra privatus?

Video: Kodėl enum konstruktorius yra privatus?

Video: Kodėl enum konstruktorius yra privatus?
Video: #70 Enum Class in Java 2024, Lapkritis
Anonim

Jūs iš tikrųjų negalite turėti visuomenės enum konstruktorius . Jums reikia šito konstruktorius būti privatus , nes enums apibrėžti baigtinį reikšmių rinkinį (pavyzdžiui, EN_US, EN_UK, FR_FR, FR_BE). Jei konstruktorius viešieji žmonės galėjo sukurti daugiau vertybių (pavyzdžiui, negaliojančių / nedeklaruotų vertybių, tokių kaip XX_KK ir tt).

Kalbant apie tai, ar enum gali turėti konstruktorių?

Tai yra, nes enum „Java“yra fiksuotos pastovios reikšmės. Taigi nėra prasmės turėti viešą ar saugomą konstruktorius nes negalite sukurti egzemplioriaus enum . Taip pat atkreipkite dėmesį, kad viduje enum konvertuojamas į klasę, kaip nurodyta toliau. Kaip mes gali nekurti enum objektai aiškiai vadinasi mes gali nesikreipti enum konstruktorius tiesiogiai.

Be to, kuo skiriasi enum konstruktorius nuo įprasto klasės konstruktoriaus? Atsakant į klausimą: iš esmės nėra skirtumas tarp du požiūriai. Tačiau enum construct suteikia jums keletą papildomų pagalbinių metodų, pvz., value(), valueOf() ir kt., kuriuos turėtumėte parašyti patys naudodami klasė -su-privačiai- konstruktorius metodas.

Be to, koks yra enumo tikslas?

The enum naudojamas įvardytų sveikųjų skaičių konstantų sąrašui deklaruoti. Jį galima apibrėžti naudojant enum raktinį žodį tiesiai vardų erdvėje, klasėje ar struktūroje. The enum naudojamas kiekvienai konstantai pavadinti, kad būtų galima nurodyti konstantą sveikąjį skaičių naudojant jos pavadinimą. Pavyzdys: enum.

Ar enumas gali būti kartojamas?

Enums nepalaiko viešųjų konstruktorių, todėl negali būti egzempliorių . Enums yra skirti, kai turite fiksuotą susijusių konstantų rinkinį. Tiksliai vienas atvejis valios sukurti kiekvienam enum pastovus.

Rekomenduojamas: