J
Java | Вопросы собесов
17.07.2026 18:44 · 👁 344
Комфорт и безопасность с ночными трусиками Pampers
Скидка 20% в любимой категории на Яндекс Маркете
Узнать больше
#реклама
market.yandex.ru
О рекламодателе
J
Java | Вопросы собесов
17.07.2026 16:10 · 👁 485
🤔 Что такое связка try-catch-finally?
Это конструкция для обработки исключений:
- try — блок кода, где может произойти ошибка.
- catch — перехватывает и обрабатывает исключение.
- finally — выполняется всегда, независимо от того, было ли исключение.
finally используется для освобождения ресурсов, закрытия файлов, соединений и т.д.
Особенности класса String?
- Неизменяемый (immutable) — нельзя изменить строку после создания.
- Хранится в String Pool при использовании литералов.
- Имеет переопределённые equals и hashCode, что делает его удобным для коллекций.
- Часто используется и оптимизирован под производительность.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
J
Java | Вопросы собесов
17.07.2026 10:44 · 👁 606
И вы знаете
Поэтому просто ещё раз обозначим, что промокод NETSIL скинет 5000 рублей при бронировании жилья на Яндекс Путешествиях.
Забронировать
#реклама
travel.yandex.ru
О рекламодателе
J
Java | Вопросы собесов
17.07.2026 09:05 · 👁 656
🤔 Где в обработке исключений может применяться конструкция с finally?
Конструкция finally в Java используется для гарантированного выполнения кода, независимо от того, произошло исключение или нет. Обычно применяется для освобождения ресурсов, таких как закрытие файлов, соединений с базой данных или потоков.
🚩Основная структура
try {
// Код, который может выбросить исключение
} catch (Exception e) {
// Обработка исключения
} finally {
// Этот блок выполнится всегда
}
Пример
FileInputStream fileInputStream = null;
try {
fileInputStream = new FileInputStream("file.txt");
System.out.println(fileInputStream.read());
} catch (IOException e) {
System.out.println("Ошибка: " + e.getMessage());
} finally {
if (fileInputStream != null) {
fileInputStream.close(); // Всегда закрываем файл
}
}
Ставь 👍 и забирай 📚 Базу знаний
J
Java | Вопросы собесов
16.07.2026 18:44 · 👁 734
Яндекс Музыка до 360 дней бесплатно
Яндекс Музыка для вас и 3-х ваших близких.
Кинопоиск и Яндекс Книги тоже в мультиподписке Плюс.
Попробуйте бесплатно❤️
Слушать
#реклама 18+
music.yandex.ru
О рекламодателе
J
Java | Вопросы собесов
16.07.2026 16:10 · 👁 791
🤔 Что такое One to One?
Это тип связи, при котором каждой записи в одной таблице соответствует ровно одна запись в другой таблице.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
J
Java | Вопросы собесов
16.07.2026 10:44 · 👁 832
Зарабатывайте на установках Яндекс Браузера
Партнёрская программа для сервисных центров, магазинов компьютерной техники, сайтов для скачивания файлов и авторов статей.
Вы можете предлагать его своим клиентам и аудитории — и зарабатывать на новых установках.
Выплаты до 500₽ за каждую установку Яндекс Браузера.
Подать заявку
#реклама 0+
partner.browser.yandex.ru
О рекламодателе
J
Java | Вопросы собесов
16.07.2026 09:05 · 👁 711
🤔 Расскажи про Hash Code & Equals Contract
Когда вы переопределяете методы equals() и hashCode(), важно соблюдать контракт, иначе объект может вести себя некорректно в коллекциях (HashMap, HashSet и др.).
🚩Контракт `equals()`
Метод equals() определяет, когда два объекта равны.
Рефлексивность – x.equals(x) всегда true.
Симметричность – x.equals(y) == y.equals(x).
Транзитивность – если x.equals(y) и y.equals(z), то x.equals(z).
Согласованность – многократные вызовы x.equals(y) дают один и тот же результат.
Сравнение с null всегда false – x.equals(null) == false.
class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
@Override
public boolean equals(Object obj) {
if (this == obj) return true; // Проверка на одинаковые ссылки
if (obj == null || getClass() != obj.getClass()) return false; // Проверка типа
Person person = (Person) obj;
return age == person.age && name.equals(person.name); // Сравнение полей
}
}
🚩Контракт `hashCode()`
Метод hashCode() возвращает числовой хеш-код объекта. Он должен соответствовать equals()!
Если x.equals(y) == true, то x.hashCode() == y.hashCode().
Если x.hashCode() != y.hashCode(), то x.equals(y) == false (но обратное не всегда верно).
Хеш-код должен оставаться неизменным, если объект не изменяется.
@Override
public int hashCode() {
return Objects.hash(name, age);
}
🚩Почему контракт `equals()` и `hashCode()` важен?
В коллекциях, таких как HashSet, HashMap, HashTable, объекты хранятся по хеш-коду.
Что будет, если equals() переопределён, но hashCode() – нет?
Set<Person> people = new HashSet<>();
people.add(new Person("Иван", 25));
people.add(new Person("Иван", 25)); // Ожидаем, что не добавится
System.out.println(people.size()); // ❌ Будет 2, а не 1, если `hashCode()` отсутствует!
Правильный вариант (equals() + hashCode())
class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
@Override
public boolean equals(Object obj) {
if (this == obj) return true;
if (obj == null || getClass() != obj.getClass()) return false;
Person person = (Person) obj;
return age == person.age && name.equals(person.name);
}
@Override
public int hashCode() {
return Objects.hash(name, age);
}
}
Ставь 👍 и забирай 📚 Базу знаний
J
Java | Вопросы собесов
15.07.2026 20:16 · 👁 806
Освой многопоточность в Java: вебинар с от Otus!
Хочешь писать быстрый Java код? Приходи на открытый урок: разберём основы многопоточности - узнаешь, как ускорить приложения!
Узнать больше
#реклама 16+
otus.ru
О рекламодателе
J
Java | Вопросы собесов
15.07.2026 16:10 · 👁 864
🤔 Что такое транзакция в БД?
Это последовательность операций с базой данных, которая должна быть выполнена как единое целое.
1. Она удовлетворяет свойствам ACID (атомарность, согласованность, изолированность, надёжность).
2. Если одна из операций не удаётся, транзакция откатывается до начального состояния.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний