¿Cuáles son los significados y diferencias de las anotaciones @AllArgsConstructor, @Data, @NoArgsConstructor y @RequiredArgsConstructor?

@AllArgsConstructor:

La anotación @AllArgsConstructor se utiliza para generar un constructor completamente parametrizado . El permiso de acceso predeterminado del constructor generado también es público. Cuando se agregan anotaciones a una clase, se generan constructores para todos los campos.

@Datos:

La anotación @Data se utiliza para generar todos los métodos requeridos por Java Bean, como iguales, hashCode, toString y getters/setters . Cuando se agregan anotaciones a una clase, los métodos getter y setter se agregarán automáticamente para todas las propiedades de la clase. Además, también se generarán automáticamente iguales, hashCode, toString, constructor y otros métodos.

@NoArgsConstructor:

La anotación @NoArgsConstructor se utiliza para generar un constructor sin argumentos y el constructor generado de forma predeterminada tiene permisos públicos. Si usted mismo define un constructor parametrizado, el constructor sin parámetros no se generará a menos que se utilice la anotación @ForceArgsConstructor para forzar la generación de un constructor con todos los parámetros.

@RequiredArgsConstructor:

La anotación @RequiredArgsConstructor se utiliza para generar un constructor con los parámetros requeridos, solo genera un constructor para las variables miembro modificadas por final y genera un constructor que solo contiene las variables miembro modificadas por la anotación @NotNull como parámetros.

Supongo que te gusta

Origin blog.csdn.net/weixin_71921932/article/details/131047545
Recomendado
Clasificación