Класс Object
В Java класс Object
является корневым классом для всех других классов. Он определен в пакете java.lang
и автоматически является суперклассом для всех классов, если явно не указан другой суперкласс.
equals(Object obj)
:Метод
equals()
используется для сравнения содержимого двух объектов на равенство.Обычно переопределяется в подклассах для сравнения конкретных атрибутов объектов.
По умолчанию метод
equals()
в классеObject
выполняет сравнение ссылок, проверяя, указывают ли две ссылки на один и тот же объект.
hashCode()
:Метод
hashCode()
возвращает целочисленное значение, называемое хеш-кодом объекта.Этот метод используется в хеш-таблицах и других структурах данных для быстрого поиска объектов.
Реализация по умолчанию в классе
Object
возвращает хеш-код, основанный на внутреннем адресе объекта в памяти.
toString()
:Метод
toString()
возвращает строковое представление объекта.Переопределение этого метода позволяет удобно получать информацию о содержимом объекта в виде строки.
По умолчанию метод
toString()
возвращает строку, содержащую имя класса и хеш-код объекта.
getClass()
:Метод
getClass()
возвращает объект типаClass
, представляющий класс объекта.Этот метод позволяет получить информацию о классе объекта во время выполнения программы.
clone()
:Метод
clone()
создает и возвращает копию объекта.Для корректной работы метода
clone()
класс объекта должен реализовать интерфейсCloneable
и переопределить методclone()
.
finalize()
:Метод
finalize()
вызывается сборщиком мусора перед удалением объекта из памяти.Переопределение этого метода позволяет выполнять очистку ресурсов или другие действия перед уничтожением объекта.
notify()
,notifyAll()
,wait()
:Эти методы используются для реализации механизмов синхронизации и многопоточности в Java.
Они используются в связке с мониторами объектов для управления доступом к общим ресурсам в многопоточных приложениях.
wait(long timeout)
:Метод
wait(long timeout)
позволяет потоку ждать определенное количество времени до того, как он будет пробужден или прерван.
Класс Object
предоставляет базовые функции и методы, которые доступны для всех объектов в Java, и является основой для создания пользовательских классов.
Last updated