[JAVA] Wenn Sie die übergeordnete Klasse in Lomboks @builder aufnehmen möchten

Kopieren Sie den Code von https://stackoverflow.com/questions/44948858/lombok-builder-on-a-class-that-extends-another-class. `` `@ Builder``` wird häufig an eine Klasse angehängt, es wird jedoch eine Problemumgehung geschrieben, die dem Konstruktor übergeben wird, und die Parameter von Eltern und Kind werden dort aufgelistet.

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.16.20</version>
</dependency>
@AllArgsConstructor
@ToString
public class Parent {
	  private double d;
	  private float e;
}
@ToString(callSuper=true)
public class Child extends Parent  {
	  private String a;
	  private int b;
	  private boolean c;

	  @Builder
	  public Child(String a, int b, boolean c, double d, float e) {
	    super(d, e);
	    this.a = a;
	    this.b = b;
	    this.c = c;
	  }
}
Child child = Child.builder().a("aVal").b(1000).c(true).d(10.1).e(20.0F).build();
System.out.println(child);
Child(super=Parent(d=10.1, e=20.0), a=aVal, b=1000, c=true)

Recommended Posts

Wenn Sie die übergeordnete Klasse in Lomboks @builder aufnehmen möchten
Wenn Sie die Testabdeckung privater Methoden in JUnit erfüllen möchten
Wenn Sie die Java-Entwicklungsumgebung von Eclipse aus ändern möchten
Was tun, wenn Sie Ihr Root-Passwort unter CentOS7 vergessen haben?
[Swift] Wenn Sie wissen möchten, ob die Anzahl der Zeichen in String mit einer bestimmten Anzahl übereinstimmt ...
Wenn Sie Ihre Container nur in der Cloud ausführen möchten, ist Azure Container Instances ganz einfach
Wenn Sie eine Methode in RSpec verspotten möchten, sollten Sie die Methode allow für mock und die Singleton-Methode verwenden.
Wenn Sie Werte dynamisch einbetten und Attributwerten in Thymeleaf 3 Text hinzufügen möchten
Wenn Sie Datenbankspalten usw. ändern möchten.
Wenn Sie sich im Klassennamen verlieren
Wenn Sie InputStream in JDBI3 binden möchten
Wenn Sie die Methode außerhalb verwenden möchten
Ich möchte den Wert in Ruby erhalten
Wenn Sie Android Room verwenden und die Spaltendefinition ändern möchten
Wenn Sie in der Bean-Validierung den Feldnamen in die Fehlermeldung aufnehmen möchten, können Sie keine Ausgabe von LocalValidatorFactoryBean ausführen.
Ich möchte eine TraceId in das Protokoll einbetten
Was tun, wenn Sie den Text eines Elements in Selen nicht abrufen können?
Wenn Sie die Spring Boot + Thymeleaf-Verarbeitung trennen möchten
Wenn Sie Mockito mit Kotlin verwenden möchten, verwenden Sie Mockito-Kotlin
Wenn Sie Annotation in Java 8 dynamisch ersetzen möchten
Was tun, wenn Sie den Befehl "Java-Paketname / Klassenname" nicht ausführen können?
Wenn in Ruby Hash [: a] [: b] [: c] = 0 ist, möchten wir, dass Sie rekursiv erweitern, auch wenn der Schlüssel nicht vorhanden ist
So schreiben Sie in die Modellklasse, wenn Sie mit PlayFramework Binärdaten in der Datenbank speichern möchten
[Rails] Was tun, wenn Sie versehentlich eine Bundle-Installation in einer Produktionsumgebung in Ihrer lokalen Umgebung durchführen?
Verwenden Sie JLine, wenn Sie Tastenanschläge auf der Konsole zeichenweise in Java verarbeiten möchten
Notiz, die zum Anmeldebildschirm übergeht, wenn Sie nicht mit devise angemeldet sind
Wenn Sie die Hauptzweiginformationen in dem aktuellen Zweig wiedergeben möchten, an dem Sie gerade arbeiten
So erhalten Sie den Namen einer Klasse / Methode, die in Java ausgeführt wird
Was tun, wenn in GlassFish eine java.io.IOException auftritt?
Wenn Sie Programmieren an der Universität studieren möchten, gehen Sie nach Australien
[# 3 Java] Lesen Sie dies, wenn Sie Java lernen möchten! ~ Sorgfältig ausgewählt ~
Ich möchte dem select-Attribut einen Klassennamen geben
Ich möchte die Liste der Klassen unter dem Paket rekursiv durchsuchen
Ich möchte im gespeicherten Zustand zum selben Bildschirm wechseln
Was tun, wenn der Befehl Rails unbrauchbar wird?
Ich möchte die if-else-Anweisung für bedingte Verzweigungen in Java vereinfachen
[Für Super-Anfänger] Das Mindestwissen, das Sie mit Hashes und Symbolen berücksichtigen möchten
Was tun, wenn Sie die Quellposition wissen möchten, an der die Methode in bind.pry definiert ist?
[Wörter, die mir geschrieben wurden, als ich in der ersten Klasse war ⑦] Was ich möchte, dass Sie zumindest in die Visual Studio Code-Erweiterung aufnehmen
[Rails / Routing] So verweisen Sie auf den Controller in Ihrem eigenen Verzeichnis
Was tun, wenn in Docker ein gcc-Fehler auftritt?
ProxyFactory ist praktisch, wenn Sie AOP mit Spring testen möchten!
Was tun, wenn die Rails-Seite im Rails-Lernprogramm 1.3.2 nicht angezeigt wird?
Was tun, wenn Cloud 9 im Rails-Lernprogramm voll ist?
Ich möchte den oberen Rand in der UITableView von Grouped entfernen (schnell)
Beurteilen Sie, ob die zu vergleichenden Zeichenfolgen in Java identisch sind
[Java] Ich möchte mit dem Schlüssel im Objekt eindeutig arbeiten
Ich möchte den Wert von Attribute in Selenium of Ruby ändern
[Android] Ich möchte den Listener über die Schaltfläche in ListView abrufen