Встречается на собеседованиях • сегодня

Какие использовал шаблоны проектирования

В Java часто применяют следующие шаблоны проектирования: 1. **Singleton** – гарантирует единственный экземпляр класса: ```java public class Singleton { private static Singleton instance; private Singleton() {} public static Singleton getInstance() { if (instance == null) { instance = new Singleton(); } return instance; } } ``` 2. **Factory Method** – делегирует создание объектов подклассам: ```java interface Product {} class ConcreteProduct implements Product {} abstract class Creator { abstract Product factoryMethod(); } ``` 3. **Observer** – уведомляет подписчиков об изменениях: ```java interface Observer { void update(); } class Subject { private List observers = new ArrayList<>(); void addObserver(Observer o) { observers.add(o); } void notifyObservers() { observers.forEach(Observer::update); } } ``` 4. **Decorator** – динамически добавляет функциональность: ```java interface Component { void operation(); } class Decorator implements Component { private Component component; Decorator(Component c) { this.component = c; } public void operation() { component.operation(); } } ``` Также часто используют: Strategy, Adapter, Proxy, Builder. Выбор зависит от задачи – например, Singleton для логгеров, Observer для событийных систем.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы