Должен ли я помещать тег @Override, если я реализую метод интерфейса? Я знаю, что тег @Override должен быть там, когда вы переопределяете метод суперкласса (а не интерфейс). Но как насчет реализации метода интерфейса?Должен ли я использовать тег @Override при реализации интерфейса?
ответ
Ну, yes:
Вы должны использовать @Override когда возможно. Это предотвращает простые ошибки от изготовления. Пример:
@Override public boolean equals(MyObject mObj){ // code ... }
Это не компилируется, потому что не правильно переопределить равных.
То же самое будет идти на методы, которые реализуют интерфейс (1.6 и выше только) или переопределить метод супер класса.
Но как приходят в IDE NetBeans (а теперь затмение Helios) жалуется, когда я делаю что-то вроде: новый компараторов
@dolaa, какую версию java вы используете? 1.5 не позволяет реализовать аннотирующий интерфейс таким образом. – jjnguy
Но вы должны обязательно это сделать, если используете 1.6 – jjnguy
- 1. @Override не допускается при реализации метода интерфейса
- 2. Должен ли я использовать throw() при реализации не метательного обмена?
- 3. Должен ли я комбинировать реализации интерфейса с использованием отражения (C#)?
- 4. Почему я должен использовать атрибуты вместо реализации интерфейса?
- 5. Java: Должен ли я добавлять аннотацию @Override при реализации абстрактных методов?
- 6. Должен ли я удалить аннотацию @Override?
- 7. Могу ли я использовать методы расширения для реализации интерфейса?
- 8. Должен ли я использовать построитель интерфейса или нет?
- 9. Должен ли я использовать ссылку?
- 10. Должен ли я использовать собственный ключевой слово (свойства) в реализации?
- 11. Должен ли я использовать геттеры и сеттеры внутри реализации класса?
- 12. Должен ли я использовать nullable/nonnull в файле реализации
- 13. Ошибка при реализации интерфейса
- 14. Должен ли я использовать convertView?
- 15. Устранение типа подстановочного знака в @Override реализации интерфейса
- 16. Значение интерфейса при реализации призмы
- 17. Должен ли я реализовывать элементы интерфейса явно или неявно?
- 18. Должен ли я использовать тег HTML5 для моего поиска?
- 19. Должен ли я использовать Div, Span, Nav или тег заголовка
- 20. Ошибка при реализации моего интерфейса?
- 21. Axiom Loader Реализации Override
- 22. Могу ли я принудительно использовать @Override?
- 23. Override формы asp.net тег
- 24. Почему мы используем @Override при реализации метода из интерфейса? Действительно ли это переопределяет метод?
- 25. Должен ли я использовать фреймворк?
- 26. Должен ли я использовать тег <a>? Могу ли я просто использовать .click()?
- 27. Использовать лямбда для реализации интерфейса рефакторинга?
- 28. Почему я должен использовать аннотацию `@ RequestParam` для класса реализации вместо класса интерфейса?
- 29. Должен ли я использовать «Установить» или «Список»
- 30. Должен ли я использовать MethodInvoker или Действие
Возможный дубликат - http://stackoverflow.com/questions/212614/should-a-method-that-implements-an-interface-method-be-annotated-with-override/212624#212624 – jjnguy