Quelles sont les significations et les différences des annotations @AllArgsConstructor, @Data, @NoArgsConstructor et @RequiredArgsConstructor ?

@AllArgsConstructor:

L'annotation @AllArgsConstructor est utilisée pour générer un constructeur entièrement paramétré . L'autorisation d'accès par défaut du constructeur généré est également publique. Lorsque des annotations sont ajoutées à une classe, des constructeurs sont générés pour tous les champs.

@Données:

L'annotation @Data est utilisée pour générer toutes les méthodes requises par Java Bean, telles que equals, hashCode, toString et getters/setters . Lorsque des annotations sont ajoutées à une classe, les méthodes getter et setter seront automatiquement ajoutées pour toutes les propriétés de la classe. De plus, les méthodes equals, hashCode, toString, constructor et autres seront également automatiquement générées.

@NoArgsConstructor :

L'annotation @NoArgsConstructor est utilisée pour générer un constructeur sans argument , et le constructeur généré par défaut dispose d'autorisations publiques. Si vous définissez vous-même un constructeur paramétré, le constructeur sans paramètre ne sera généré que si l'annotation @ForceArgsConstructor est utilisée pour forcer la génération d'un constructeur avec tous les paramètres.

@RequiredArgsConstructor :

L'annotation @RequiredArgsConstructor est utilisée pour générer un constructeur avec les paramètres requis. Elle génère uniquement un constructeur pour les variables membres modifiées par final et génère un constructeur qui contient uniquement les variables membres modifiées par l'annotation @NotNull en tant que paramètres.

Guess you like

Origin blog.csdn.net/weixin_71921932/article/details/131047545