Junior — Middle
Кой модел се използва за инкапсулиране на процеса на създаване на обекти?
sobes.tech AI
Отговор от AI
Для инкапсуляции процесса создания объектов используется паттерн "Фабричный метод" (Factory Method). Он позволяет создавать объекты, не указывая конкретных классов создаваемых объектов, а делегирует это подклассам.
Пример на Java:
abstract class Creator {
abstract Product factoryMethod();
void someOperation() {
Product product = factoryMethod();
product.doSomething();
}
}
class ConcreteCreator extends Creator {
@Override
Product factoryMethod() {
return new ConcreteProduct();
}
}
interface Product {
void doSomething();
}
class ConcreteProduct implements Product {
public void doSomething() {
System.out.println("Работа продукта");
}
}
Такой подход упрощает расширение и поддержку кода.