Hãy kể một trường hợp sử dụng **Bu...
Hãy kể một trường hợp sử dụng **Bu...
Trong Java, Builder Design Pattern là một mẫu thiết kế tạo ra (Creational Design Pattern) được sử dụng để tạo ra một đối tượng phức tạp bằng cách sử dụng các bước xây dựng đơn giản và rõ ràng. Mẫu thiết kế này giúp tạo ra các đối tượng một cách linh hoạt và an toàn hơn so với việc sử dụng các constructor truyền thống hoặc các phương thức factory.
Pizza
Giả sử bạn đang phát triển một ứng dụng cho một cửa hàng pizza, và bạn cần một cách linh hoạt để tạo ra các đối tượng Pizza
với nhiều lựa chọn như loại bánh, loại phô mai, và các topping khác nhau.
Pizza
và PizzaBuilder
Đầu tiên, bạn định nghĩa lớp Pizza
với các thuộc tính tương ứng:
public class Pizza {
private String dough;
private String sauce;
private String cheese;
private List<String> toppings;
// Constructor private để ngăn tạo trực tiếp
private Pizza(PizzaBuilder builder) {
this.dough = builder.dough;
this.sauce = builder.sauce;
this.cheese = builder.cheese;
this.toppings = builder.toppings;
}
// Getters và các phương thức khác
// Lớp Builder nội bộ
public static class PizzaBuilder {
private String dough;
private String sauce;
private String cheese;
private List<String> toppings = new ArrayList<>();
public PizzaBuilder dough(String dough) {
this.dough = dough;
return this;
}
pub...
senior
Gợi ý câu hỏi phỏng vấn