Чем отличаются == и equals() Область применения: оператор == сопоставляет ссылки на объекты в памяти, а equals() проверяет содержимое объектов. Типы данных: для примитивов == сравнивает значения, а при работе с…
** bean — это специализированный объект под управлением Spring, для которого контейнер обеспечивает жизненный цикл и DI. Обычные объекты не управляются контейнером.
ключевое слово, предназначенное для ограничения изменений для переменных: формирует константу, значение которой нельзя изменить для методов: запрещает их переопределение в классах-наследниках для классов: не позволяет…
метод hashCode() вычисляет для объекта целочисленный хеш-код применяется для быстрого индексирования элементов в коллекциях на базе хеш-таблиц, включая HashMap и HashSet поддерживает контракт с equals(): объекты,…
Как определяется this у методов прототипа объекта? Контекст выполнения функции в прототипе задаётся объектом вызова this указывает на объект, через который был вызван метод Прототип хранит методы, а this внутри них…
Основные рекомендации по переопределению equals и hashCode для entity Методы equals и hashCode обязаны соответствовать общему контракту: если equals возвращает true, значения hashCode должны совпадать сравнивать…
Как разрешаются коллизии в словарях и хэш-таблицах Контейнеры, в которых доступ к данным выполняется по ключу, используют хэш-функцию Коллизия возникает, если разные ключи получают одинаковое хэш-значение К основным…
SOLID — это пять принципов ООП, которые помогают улучшать архитектуру и дизайн программного кода S (Single Responsibility): у класса должна быть только одна причина для изменения O (Open/Closed): программный компонент…
Почему не следует создавать геттеры и сеттеры для каждого поля? Инкапсуляция означает управление доступом, а не автоматическую генерацию методов геттеры и сеттеры без практической цели делают код сложнее пассивное…
Чем sealed-классы отличаются от enum и как работают их конструкторы? sealed-классы задают тип с ограниченным набором подклассов и обеспечивают контроль иерархии enum представляет специализированный класс с…
Protocol из модуля typing: назначение и использование тип из Python typing для статической типизации описывает интерфейс набором методов, не предоставляя их реализацию поддерживает duck typing: объект считается…
Immutable object: особенности и применение объект, чьё состояние нельзя изменить после создания поля и свойства являются константами либо доступны исключительно для чтения повышает безопасность при параллелизме и…