java, почему входным параметром метода equals должен быть объект

Я просматриваю книгу по структурам данных. В настоящее время я занимаюсь графами, и приведенный ниже код предназначен для вершинной части graph.

class Vertex<E>{
    //bunch of methods

    public boolean equals(Object o){
         //some code
    }
}

Когда я пытаюсь реализовать этот метод equals, мой компилятор жалуется на то, что не проверяет тип параметра и просто разрешает его отправку любому объекту. Мне также кажется немного странным, почему этот параметр не должен быть Вершина вместо объекта. Есть ли причина, по которой автор делает это, или это какая-то ошибка или устаревший пример?

13
задан jhlu87 9 July 2011 в 19:15
поделиться