Sobes.tech
Junior

Каква е ролята на класа Object в Java?

sobes.tech AI

Отговор от AI

Класът Object е кореновият клас в йерархията на класовете в Java. Той е суперклас на всички останали класове, включително масивите.

Основни роли и функции:

  • Общ предшественик: Всеки клас в Java наследява неявно от Object. Това означава, че всеки обект в Java може да бъде преобразуван към тип Object.
  • Осигуряване на базов набор от методи: Object съдържа набор от фундаментални методи, които са достъпни за всички обекти. Те включват:
    • equals(Object obj): Сравнява два обекта за равенство.
    • hashCode(): Връща хеш кода на обекта.
    • toString(): Връща низовото представяне на обекта.
    • getClass(): Връща обект Class, който представлява времето за изпълнение на класа на обекта.
    • notify(), notifyAll(), wait(), wait(long timeout), wait(long timeout, int nanos): Методи, използвани за синхронизация на нишки.
    • clone(): Създава и връща копие на обекта (изисква реализиране на интерфейса Cloneable).
    • finalize(): Метод, извикван от събирача на боклуци преди изтриването на обекта (стар, не се препоръчва за използване).
  • Полиморфизъм: Благодарение на това, че Object е общ предшественик, могат да се създават колекции или методи, които могат да работят с всякакъв тип обекти, използвайки полиморфизъм. Например, ArrayList<Object> може да съхранява елементи от всякакви типове.
// Пример за използване на метода toString()
public class MyClass {
    private int value;

    public MyClass(int value) {
        this.value = value;
    }

    @Override
    public String toString() {
        return "MyClass [value=" + value + "]";
    }

    public static void main(String[] args) {
        MyClass obj = new MyClass(10);
        System.out.println(obj.toString()); // Ще изведе "MyClass [value=10]"
    }
}