Saltar al contenido

Definir constructor predeterminado para registro

Si encuentras algo que no entiendes puedes comentarlo y te ayudaremos lo más rápido posible.

Solución:

Para dividir los cabellos, nunca puede definir un constructor predeterminado, porque el compilador genera un constructor predeterminado cuando no hay constructores definidos, por lo tanto, cualquier constructor definido no es, por definición, uno predeterminado.

Si desea que un registro tenga un constructor sin argumentos, los registros permiten agregar constructores adicionales o métodos de fábrica, siempre que se llame al “constructor canónico” que toma todos los campos del registro como argumentos.

public record Record(int recordId) 
   public Record() 
      this(0); 
   

Constructor explícito

En su caso, puede especificar explícitamente un constructor sin argumentos con la delegación al constructor canónico con un valor predeterminado si lo desea y esto se puede hacer como:

public Record()
    this(Integer.MIN_VALUE);

En resumen, cualquier constructor no canónico debe delegar en uno, y eso debe cumplir true por la naturaleza portadora de datos de estas representaciones.

Constructor compacto

Por otro lado, tenga en cuenta que la representación que había utilizado en su código.

public Record 

se denomina “constructor compacto” que representa un constructor que acepta todos los argumentos y que también se puede usar para validar los datos proporcionados como attributes del registro Un constructor compacto es una forma alternativa de declarar el constructor canónico.

Reseñas y valoraciones

Acuérdate de que te permitimos decir .

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *