Annotation pour différents constructeurs à Lombok?
J'ai une classe
public class Answer<T> {
private T data;
public Answer(T data) {
this.data = data;
}
public Answer() {
}
public T getData() {
return data;
}
public Answer<T> setData(T data) {
this.data = data;
return this;
}
}
qui je veux simplifier avec Lombok
.
Si j'ajoute une annotation @AllArgsConstructor
que je ne vois pas de constructeur par défaut.
@Data
@AllArgsConstructor
public class Answer<T> {
private T data;
public Answer<T> setData(T data) {
this.data = data;
return this;
}
}
Est-il possible d'avoir à la fois un constructeur dans Lombok
?
source d'informationauteur barbara
Vous devez vous connecter pour publier un commentaire.
Votre classe est équivalente à:
Bien que, strictement parlant, cela ajoute
toString
equals
ethashCode
méthodes sur tous variables. Cela peut (souvent) de provoquer une boucle infinie. Méfiez-vous de@Data
.@Accessors(chain = true)
rend lesetter
implémentations de retourthis
plus d'infos ici.Vous pouvez ajouter plusieurs constructeur annotations:
Noter que
@Accessors
est expérimentale, elle peut être changée ou renommé.Je préfère
@Builder
à@AllArgsConstructor
car elle permet seulement nécessaire paramètres à régler, alors que tous les arguments du constructeur est tout ou rien. Il génère également beaucoup plus lisible le code, pensezContre
Avez-vous essayé?