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

Для чего нужен Open-Closed Principle из SOLID

Принцип открытости-закрытости (OCP) гласит: классы должны быть открыты для расширения, но закрыты для модификации.

Это означает, что:

  1. Нельзя изменять существующий код (чтобы не сломать работающую логику)
  2. Можно добавлять новую функциональность через наследование, композицию или интерфейсы

Пример:

java
interface Shape {  
    double area();  
}  

class Circle implements Shape {  
    private double radius;  
    public double area() { return Math.PI * radius * radius; }  
}  

class Square implements Shape {  
    private double side;  
    public double area() { return side * side; }  
}  

// Новый класс можно добавить без изменения существующего кода  
class Triangle implements Shape {  
    public double area() { /* ... */ }  
}  

Плюсы:

  • Уменьшает риск багов в старом коде
  • Упрощает поддержку и масштабирование
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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