Why we MUST have to take an argument of type **Object** during overriding equals() method, but when we override compareTo() we can take an argument of the type we are sorting

```
   class Student implements Comparable { 
       String name; 
       int rollNum;
       // We can take here actual Student rather than Object
       public int compareTo(Object o){ 
           Student s = (Student)o; 
           return name.compareTo(o.getName());
       } 
       // We cant take an argument other than Object here
       public boolean equals(Object o){
       }
}

```