Расширить Comparable generic в финальном классе

Я пытаюсь расширить Comparable <> в своем последнем классе, но понятия не имею, почему он проходит через эту ошибку.

public final class Identifier extends Comparable<Identifier> {

...

}

ОШИБКА: тип Comparable не может быть суперклассом идентификатора; суперкласс должен быть классом

Но разве не Comparable класс? Я не понимаю.

Спасибо за вашу помощь

Нет; это интерфейс.

SLaks 16.05.2018 22:34

Это происходит потому, что Comparable<T> - это интерфейс. Вам нужно использовать implements вместо extends.

Sergey Kalinichenko 16.05.2018 22:35
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
2
59
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Нет, это интерфейс. Вы реализуете интерфейсы, а не расширяете их. Тебе нужно

public final class Identifier implements Comparable<Identifier> {
  ...
}

Другие вопросы по теме