Расширить И реализовать в том же классе

1

Как я могу реализовать интерфейс и расширять класс до того же класса?

Это, похоже, не работает (интерфейс вообще не реализован):

public class StrongChecker extends BasicChecker implements Checker {

Это также не работает (интерфейс вообще не реализован):

public class StrongChecker extends BasicChecker {

И это дает мне ошибку:

public class StrongChecker implements Checker extends BasicChecker {

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

  • 0
    Я думаю, что сделал ошибку, исправьте меня, если я ошибаюсь, но первый вариант работает, я решил, что он не работает, потому что я не поместил какие-либо методы в StrongChecker и не получил ошибок, предположил, что это было, потому что интерфейс не был реализован, но, очевидно, StrongChecker получил методы это нужно из BasicChecker
  • 2
    Иногда, когда вы задаете вопрос, вы находите ответ.
Показать ещё 2 комментария
Теги:
extends
implements

2 ответа

5
Лучший ответ

Нет ничего плохого в:

public class StrongChecker extends BasicChecker implements Checker {

Конечно, ваш класс StrongChecker должен реализовать все методы Checker (или наследовать реализации от BasicChecker), или код не будет компилироваться.

1

В этом синтаксисе нет ничего плохого:

public class StrongChecker extends BasicChecker implements Checker {

Это прекрасно, просто убедитесь, что вы фактически реализуете все методы, которые нуждаются в реализации в вашем интерфейсе, или вы получите сообщение об ошибке.

  • 0
    Это мышление и привело к моей проблеме. Я реализовал все методы из интерфейса в BasicChecker и ничего в StrongChecker, тогда вы не получите ошибок в StrongChecker, потому что он расширяет BasicChecker, в котором уже есть все методы, ха-ха
  • 0
    Если все методы, которые нуждаются в реализации, реализованы в моем BasicChecker, то StrongChecker не выдаст вам ошибок, потому что он получает методы, которые нуждаются в реализации, из BasicChecker, потому что StrongChecker расширяет BasicChecker.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню