Java Comparable Interface метод compareTo

Я не вижу ничего, что я делаю неправильно, но NetBeans выдает следующую ошибку:

incomparable types
required: boolean
found: java.lang.Object


public int compareTo(Object obj)  {
    if( obj instaceof Employee){
       Employee employee = (Employee) obj;
       if(this.weekly_earnings > employee.weekly_earnings)
           return 1;
       else if(this.weekly_earnings == employee.weekly_earnings)
           return 0;
       else
           return -1;
    }
    else{
        System.out.println("Error");
    }
}

person user69514    schedule 05.03.2010    source источник
comment
И он ничего не возвращает из случая ошибки (должен выдать ClassCastException, на самом деле следует использовать дженерики).   -  person Tom Hawtin - tackline    schedule 05.03.2010
comment
Я также хотел бы добавить, что, вероятно, было бы лучше, если бы вы просто вернули (this.weekly_earnings - employee.weekly_earnings), сохранив все операторы if.   -  person DaveJohnston    schedule 05.03.2010


Ответы (1)