Waarom is enum-constructor privé?
Waarom is enum-constructor privé?

Video: Waarom is enum-constructor privé?

Video: Waarom is enum-constructor privé?
Video: Java Tutorial #39 - Enum Constructor in Java Programming (Examples) 2024, Mei
Anonim

Je kunt eigenlijk geen publiek hebben opsomming constructor . Je hebt dit nodig constructeur zijn privaat , omdat opsommingen definieer een eindige reeks waarden (bijvoorbeeld EN_US, EN_UK, FR_FR, FR_BE). Als de constructeur was publiek, zouden mogelijk meer waarden kunnen creëren (bijvoorbeeld ongeldige/niet-aangegeven waarden zoals XX_KK, enz.).

Wat dit betreft, kan enum een constructor hebben?

Dit is zo omdat opsomming is Java bevat vaste constante waarden. Het heeft dus geen zin om openbaar of beschermd te zijn constructeur aangezien u geen instantie van kunt maken opsomming . Houd er ook rekening mee dat intern opsomming wordt geconverteerd naar klasse zoals hieronder. zoals wij kan niet creëren opsomming objecten expliciet vandaar dat we kan niet aanroepen opsomming constructor direct.

En wat is het verschil tussen een enum-constructor en een gewone class-constructor? Om de vraag te beantwoorden: in wezen is er geen verschil tussen de twee benaderingen. Echter, opsomming construct biedt u enkele aanvullende ondersteunende methoden zoals values(), valueOf(), etc. die u zelf zou moeten schrijven met de klas -met-privé- constructeur benadering.

Wat is daarnaast het doel van opsommingen?

De opsomming wordt gebruikt om een lijst met benoemde geheeltallige constanten te declareren. Het kan worden gedefinieerd met behulp van de opsomming trefwoord rechtstreeks in een naamruimte, klasse of structuur. De opsomming wordt gebruikt om elke constante een naam te geven, zodat naar de constante integer kan worden verwezen met zijn naam. Voorbeeld: opsomming.

Kunnen opsommingen worden geïnstantieerd?

opsommingen ondersteunt geen openbare constructeurs en kan daarom niet zijn geïnstantieerd . opsommingen zijn voor als je een vaste set gerelateerde constanten hebt. Precies één exemplaar zullen voor elk worden gemaakt opsomming constante.

Aanbevolen: