Vídeo: Por que o construtor de enum é privado?
2024 Autor: Lynn Donovan | [email protected]. Última modificação: 2023-12-15 23:52
Você não pode realmente ter um público construtor enum . Você precisa disso construtor ser estar privado , Porque enums definir um conjunto finito de valores (por exemplo EN_US, EN_UK, FR_FR, FR_BE). Se o construtor era público, as pessoas poderiam potencialmente criar mais valores (por exemplo, valores inválidos / não declarados, como XX_KK, etc).
Com relação a isso, enum pode ter um construtor?
Isto é porque enum é Java contém valores constantes fixos. Então, não faz sentido ter público ou protegido construtor como você não pode criar uma instância de enum . Além disso, observe que internamente enum é convertido em classe conforme abaixo. Como nós posso não criar enum objetos explicitamente, portanto, nós posso não invocar construtor enum diretamente.
Além disso, qual é a diferença entre um construtor de enum e um construtor de classe regular? Para responder à pergunta: essencialmente, não há diferença entre as duas abordagens. Contudo, enum construct fornece alguns métodos de suporte adicionais como values (), valueOf (), etc. que você teria que escrever por conta própria com o classe -with-private- construtor abordagem.
Além disso, qual é o propósito de enums?
o enum é usado para declarar uma lista de constantes inteiras nomeadas. Ele pode ser definido usando o enum palavra-chave diretamente dentro de um namespace, classe ou estrutura. o enum é usado para dar um nome a cada constante de forma que o inteiro constante possa ser referenciado usando seu nome. Exemplo: enum.
Os enums podem ser instanciados?
Enums não suporta construtores públicos e, portanto, não pode ser instanciado . Enums são para quando você tem um conjunto fixo de constantes relacionadas. Exatamente uma instância vai ser criado para cada enum constante.
Recomendado:
O que é um construtor Java?
Construtor é um bloco de código que inicializa o objeto recém-criado. Um construtor se assemelha a um método de instância em java, mas não é um método, pois não tem um tipo de retorno. O construtor tem o mesmo nome da classe e se parece com isso em um código java
O que é um construtor sobrecarregado em C ++?
A sobrecarga do construtor na programação C ++ é igual à sobrecarga da função. Quando criamos mais de um construtor em uma classe com número diferente de parâmetros ou diferentes tipos de parâmetros ou ordem diferente de parâmetros, isso é chamado de sobrecarga de construtor
Uma classe com construtor privado pode ser herdada em Java?
5 respostas. Java não impede a subclassificação de classes com construtores privados. O que ele impede são as subclasses que não podem acessar nenhum construtor de sua superclasse. Isso significa que um construtor privado não pode ser usado em outro arquivo de classe e um construtor local de pacote não pode ser usado em outro pacote
O que é injeção de dependência de construtor?
Injeção de construtor é o ato de definir estaticamente a lista de dependências necessárias, especificando-as como parâmetros para o construtor da classe. A classe que precisa da Dependency deve expor um construtor público que leva uma instância da Dependency necessária como um argumento do construtor
Podemos ter enum dentro de enum?
A declaração de enum pode ser feita fora de uma classe ou dentro de uma classe, mas não dentro de um método. // declaração enum dentro de uma classe. A primeira linha dentro de enum deve ser uma lista de constantes e, em seguida, outras coisas como métodos, variáveis e construtor