Парни мы наследовались Объекту как от какого-либо другого класса (кроме, конечно, что мы не должны явно заявлять, что) или существуют некоторые специальные полномочия к Классу объекта, и он не наследован как другие классы?
Нет, это то же самое. Вот выдержка из JLS 8.1.3:
Если в объявлении класса для любого другого класса не содержит клаузулу extends, то этот класс имеет класс
Object
в качестве своего неявный прямой суперкласс.
Конечно, сам Object
немного особенный (JLS):
Каждый класс, кроме
Object
является расширением (то есть подклассом) одного существующего класса (§8.1.3) и может реализовывать интерфейсы (§8.1.4).
Каждый класс в Java ЯВЛЯЕТСЯ объектом. Они ведут себя как объекты, их можно добавлять в коллекции типа Object, они могут использовать любой метод, определенный в Object.
Итак, ДА, все (кроме примитивов) наследуется от Object в Java.
РЕДАКТИРОВАТЬ: Java использует подход «Все есть объект». Это как бы заставляет объектно-ориентированное программирование.
Пример:
Если класс A не расширяет другой класс, он по своей сути расширяет Object.
Если класс A расширяет другой класс B, он также расширяет Object, поскольку B должен иметь расширенный Object.
В Java все является объектом. Все методы Object ( toString ()
, wait ()
и т. Д.) Могут быть вызваны в любом экземпляре любого класса Java.