В репозитории, который был создан в Ubuntu Linux и скомпилирован в OpenJDK 6, при реализации LocationListener и SensorListener добавление тега выше унаследованных методов компилируется в порядке.Некоторые @Override показывают ошибки в Oracle Java, но не в OpenJDK
Но когда репо клонируется в систему Windows с Oracle Java, некоторые из @Override
генерируют ошибки. Пример ниже: The method onAccuracyChanged(Sensor, int) of type ExpeditionActivity must override a superclass method
Похоже, что эта ошибка возникает только при добавлении @Override
выше метода, наследуемого от реализации интерфейса. Добавление @Override
выше метода, унаследованного от базового класса, не вызывает ошибки. Это действительно имеет смысл, потому что вы на самом деле переопределяете логику исходного метода.
SO, это syactically правильно написать @Override
над унаследованными методами интерфейса?
В Java 1.5 вы можете использовать @Override для отметки методов, которые переопределяют методы суперкласса. Начиная с Java 1.6, вы можете пометить с ней методы, которые также реализуют интерфейс. – stefanglase