


Apa itu Underbuilder di Java?
Underbuilder adalah kelas yang menyediakan implementasi default dari pembangun untuk tipe tertentu. Dengan kata lain, ini adalah pembuat yang membangun instance dari tipe tertentu.
Sebagai contoh, katakanlah Anda memiliki kelas bernama `Mobil` dan Anda ingin menyediakan pembuat untuk kelas tersebut. Anda dapat mendefinisikan underbuilder seperti ini:
```
class CarBuilder : Builder
// Tentukan nilai default untuk properti Car
private var color: String = "red"
private var make: String = "toyota "
model var pribadi: String = "corolla"
tahun var pribadi: Int = 2015
// Tentukan metode pembuat yang dapat dipanggil untuk mengatur properti
menyenangkan denganWarna(warna: String): CarBuilder {
this.color = color
return this
}
bersenang-senang dengan Make(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
}
// Tentukan metode untuk membuat instance Car
override fun build(): Car {
return Car(color, make, model, year)
}
}
`` `
Dalam contoh ini, kelas `CarBuilder` adalah underbuilder untuk kelas `Car`. Ini menyediakan implementasi default dari pembuat yang dapat digunakan untuk membuat instance `Mobil`. Metode `withColor`, `withMake`, `withModel`, dan `withYear` memungkinkan Anda menyetel properti instance `Car`, dan metode `build` digunakan untuk benar-benar membuat instance `Car`.
Underbuilders adalah berguna ketika Anda ingin memberikan implementasi default dari sebuah pembangun untuk tipe tertentu, namun Anda juga ingin mengizinkan pembangun lain untuk memperluas atau memodifikasi implementasi tersebut. Misalnya, Anda mungkin memiliki pembuat dasar yang menyediakan implementasi default properti, lalu pembuat lain dapat memperluas pembuat dasar tersebut untuk menambahkan properti tambahan atau memodifikasi properti yang sudah ada.



