Назад к вопросам
Junior — Middle
94
Можешь привести пример реализации паттерна Builder в языке Java?
Ответ от нейросети
sobes.tech AI
Пример реализации паттерна Builder в Java для создания объекта User с несколькими параметрами:
public class User {
private final String firstName;
private final String lastName;
private final int age;
private final String email;
private User(Builder builder) {
this.firstName = builder.firstName;
this.lastName = builder.lastName;
this.age = builder.age;
this.email = builder.email;
}
public static class Builder {
private String firstName;
private String lastName;
private int age;
private String email;
public Builder setFirstName(String firstName) {
this.firstName = firstName;
return this;
}
public Builder setLastName(String lastName) {
this.lastName = lastName;
return this;
}
public Builder setAge(int age) {
this.age = age;
return this;
}
public Builder setEmail(String email) {
this.email = email;
return this;
}
public User build() {
return new User(this);
}
}
}
// Использование:
User user = new User.Builder()
.setFirstName("Иван")
.setLastName("Иванов")
.setAge(30)
.setEmail("ivan@example.com")
.build();
Такой подход позволяет создавать объекты с удобным и читаемым синтаксисом, особенно когда у объекта много параметров, некоторые из которых необязательны.