/
itokar98
/
HomeWorkPatternsCreationalTask1
Обзор
Документация
Войти
/
itokar98
/
HomeWorkPatternsCreationalTask1
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/PersonBuilder.java
56 строк
2 KB
Ilya Tokar
First commit
16 ноя 2025, 00:53
16 ноя 2025, 00:53
8e6b772
Код
Авторство
О чём код?
public class PersonBuilder { private String name; private String surname; private Integer age; private String address; public PersonBuilder setName(String name) { if (name == null || name.trim().isEmpty()) { throw new IllegalArgumentException("Имя не может быть пустым"); } this.name = name; return this; } public PersonBuilder setSurname(String surname) { if (surname == null || surname.trim().isEmpty()) { throw new IllegalArgumentException("Фамилия не может быть пустой"); } this.surname = surname; return this; } public PersonBuilder setAge(int age) { if (age < 0) { throw new IllegalArgumentException("Возраст не может быть отрицательным"); } this.age = age; return this; } public PersonBuilder setAddress(String address) { this.address = address; return this; } public Person build() { if (name == null || name.trim().isEmpty()) { throw new IllegalStateException("Не указано имя"); } if (surname == null || surname.trim().isEmpty()) { throw new IllegalStateException("Не указана фамилия"); } Person person; if (age != null) { person = new Person(name, surname, age); } else { person = new Person(name, surname); } if (address != null) { person.setAddress(address); } return person; } }