Какие методы в классе Object знаешь
Object - суперкласс для всех классов. Все объекты, включая массивы, наследуют методы этого класса. Они предоставляют функции, которые доступны для любого объекта. Вот основные методы:
1. `clone()` - создает и возвращает копию объекта. Метод защищенный, поэтому его можно вызвать только внутри класса объекта или в классах потомках.
2. `equals(Object obj)` - определяет равенство между двумя объектами. По умолчанию, этот метод сравнивает ссылки на объекты.
3. `finalize()` - вызывается перед удалением объекта сборщиком мусора. Метод устарел.
4. `getClass()` - возвращает Class, который представляет класс данного объекта. Можно использовать для получения имени во время выполнения.
5. `hashCode()` - возвращает хеш-код, который используется для оптимизации хранения в структурах данных.
6. `notify()` - пробуждает один поток, который ожидает на объекте (вызвавший wait()). Этот метод должен вызываться в синхронизированном контексте.
7. `notifyAll()` - пробуждает все ожидающие потоки. Должен вызываться в синхронизированном контексте.
8. `toString()` - возвращает строковое представление. По умолчанию, возвращает класс и хеш-код, но часто переопределяется для предоставления более информативного представления.
9. `wait()` - заставляет текущий поток ожидать, пока другой поток не вызовет notify() или notifyAll(). Существуют перегруженные версии wait(long timeout) и wait(long timeout, int nanos), позволяющие указать максимальное время ожидания.
Эти методы предоставляют основу для механизмов, таких как сравнение объектов, их клонирование, уведомление и ожидание в многопоточных средах, а также для работы с хеш-таблицами. Играют важную роль в проектировании и реализации Java-программ.
Feb. 22, 2024, easyoffer
public boolean equals(Object obj)
– служит для сравнения объектов по значению;
int hashCode()
– возвращает hash код для объекта;
String toString()
– возвращает строковое представление объекта;
Class getClass()
– возвращает класс объекта во время выполнения;
protected Object clone()
– создает и возвращает копию объекта;
void notify()
– возобновляет поток, ожидающий монитор;
void notifyAll()
– возобновляет все потоки, ожидающие монитор;
void wait()
– остановка вызвавшего метод потока до момента пока другой поток не вызовет метод notify()
или notifyAll()
для этого объекта;
void wait(long timeout)
– остановка вызвавшего метод потока на определённое время или пока другой поток не вызовет метод notify()
или notifyAll()
для этого объекта;
void wait(long timeout, int nanos)
– остановка вызвавшего метод потока на определённое время или пока другой поток не вызовет метод notify()
или notifyAll()
для этого объекта;
protected void finalize()
– может вызываться сборщиком мусора в момент удаления объекта при сборке мусора.
Oct. 21, 2023, Источник
Примеры ответов:
- Собеседование Java Junior | Jetbulb
- Техническое интервью Java Developer …
- Техническое интервью Java Developer …
- Техническое интервью Java Developer …
- Техническое интервью Java Developer …
- Техническое интервью Java Developer …
- Тестовое собеседование Java разработ…
- Тестовое собеседование Java разработ…
- Собеседование на позицию Java junior…
- Техническое собеседование junior Jav…
- Как пройти собеседование по JAVA?