2015-07-05 1 views
-1

Вы можете определить метод compareTo в классе без применения интерфейса Comparable. Каковы преимущества внедрения интерфейса Comparable ?Зачем внедрять интерфейс Comparable, если вы можете определить метод compareTo в классе?

+1

[Что такое интерфейсы?] (Http://programmers.stackexchange.com/questions/131332/what-is-the-point-of-an-interface) –

ответ

8

Преимущество реализации интерфейса в том, что некоторые методы специально требуют объекта, который реализует интерфейс Comparable. Это дает им гарантию того, что объект, который вы передаете, имеет метод compareTo с правильной подписью.

В Java нет способа иметь метод, требующий, чтобы объект реализовал любой данный метод (например, compareTo) сам по себе. Чтобы обойти это, были созданы интерфейсы. Каждый раз, когда у вас есть объект, который вы знаете, это Comparable, вы также знаете, что на нем можно позвонить compareTo.

+0

Я все еще смущен. Примеры/аналогии помогли бы. – Saud

+2

@Saud Вы посмотрели на вопрос о том, какой ваш был отмечен как дубликат? –

+0

да, но это не помогло ни – Saud

Смежные вопросы