Каждый класс должен иметь только одну ответственность, или одну причину для изменения. Это означает, что класс должен выполнять лишь одну задачу или представлять один аспект системы.
Пример нарушения SRP: Класс, который одновременно управляет данными пользователя и отправкой сообщений по электронной почте.
Решение: Разделить задачи на два отдельных класса — один для управления пользователем, другой для работы с уведомлениями.
publicclassUserService{// Только управление пользователем}publicclassEmailService{publicvoidsendEmail(Stringemail,Stringmessage){// Только отправка сообщений}}