Встречается на собеседованиях • сегодня
Как используешь на практике принцип открытости/закрытости
Принцип открытости/закрытости (OCP) означает, что классы должны быть открыты для расширения, но закрыты для модификации. На практике применяю через:
- Абстракции и интерфейсы:
java
interface PaymentProcessor {
void processPayment(double amount);
}
class CreditCardProcessor implements PaymentProcessor {
public void processPayment(double amount) { /*...*/ }
}
class PayPalProcessor implements PaymentProcessor {
public void processPayment(double amount) { /.../ }
}
text
2. Шаблон Стратегия для изменения поведения без изменения кода:
```java
class PaymentService {
private PaymentProcessor processor;
public PaymentService(PaymentProcessor processor) {
this.processor = processor;
}
public void makePayment(double amount) {
processor.processPayment(amount);
}
}- Использую наследование для расширения функциональности, а не для изменения существующей.
Такой подход позволяет добавлять новые платежные системы, не изменяя существующий код PaymentService.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы