


Was sind Underbuilder in Java?
Ein Underbuilder ist eine Klasse, die eine Standardimplementierung eines Builders für einen bestimmten Typ bereitstellt. Mit anderen Worten handelt es sich um einen Builder, der Instanzen eines bestimmten Typs erstellt. Nehmen wir zum Beispiel an, Sie haben eine Klasse namens „Car“ und möchten einen Builder dafür bereitstellen. Sie könnten einen Underbuilder wie folgt definieren:
```
class CarBuilder : Builder
// Definieren Sie die Standardwerte für die Eigenschaften von Car
private var color: String = "red"
private var make: String = "toyota "
privates Variablenmodell: String = "corolla"
privates Variablenjahr: Int = 2015
// Definieren Sie die Builder-Methoden, die zum Festlegen der Eigenschaften aufgerufen werden können
Spa+ mitColor(Farbe: String): CarBuilder {
this.color = Farbe
return this
}
fun withMake(make: String): CarBuilder {
this.make = make
return this
}
fun withModel(model: String): CarBuilder {
this.model = model
return this
}
fun withYear(year: Int) : CarBuilder {
this.year = year
return this
}
// Methode zum Erstellen der Car-Instanz definieren
override fun build(): Car {
return Car(color, make, model, year)
}
}
`` „In diesem Beispiel ist die Klasse „CarBuilder“ ein Underbuilder für die Klasse „Car“. Es stellt eine Standardimplementierung des Builders bereit, die zum Erstellen von Instanzen von „Car“ verwendet werden kann. Mit den Methoden „withColor“, „withMake“, „withModel“ und „withYear“ können Sie die Eigenschaften der „Car“-Instanz festlegen, und die „build“-Methode wird verwendet, um die „Car“-Instanz tatsächlich zu erstellen. Es gibt Underbuilder Nützlich, wenn Sie eine Standardimplementierung eines Builders für einen bestimmten Typ bereitstellen möchten, Sie aber auch anderen Buildern erlauben möchten, diese Implementierung zu erweitern oder zu ändern. Beispielsweise verfügen Sie möglicherweise über einen Basis-Builder, der eine Standardimplementierung der Eigenschaften bereitstellt, und andere Builder können diesen Basis-Builder dann erweitern, um zusätzliche Eigenschaften hinzuzufügen oder die vorhandenen zu ändern.



