Java: заставить подклассы переопределять методы суперкласса - PullRequest
10 голосов
/ 12 сентября 2011

Как я могу написать метод и заставить подклассы переопределить этот метод. В Eclipse в диалоге быстрого исправления должно отображаться следующее: «Добавить не реализованные методы».

Спасибо

Ответы [ 5 ]

18 голосов
/ 12 сентября 2011

Как написать метод и заставить подклассы переопределить этот метод.

Объявите метод как abstract:

enter image description here

Eclipse предоставит вам опцию «Добавить не реализованные методы» для всех (не реализованных) абстрактных методов и методов интерфейса.

8 голосов
/ 12 сентября 2011

Просто объявите метод как abstract в базовом классе. Все детские классы будут вынуждены это осуществить. В качестве альтернативы вы могли бы также использовать интерфейс вместо конкретного класса, что является просто соглашением о том, что определенные методы будут реализованы. Либо один хорошо, это зависит от ваших потребностей.

4 голосов
/ 12 сентября 2011

Вы можете сделать это, сделав метод abstract (без предоставления реализации по умолчанию).

2 голосов
/ 12 сентября 2011

Объявите метод как abstract.

1 голос
/ 16 октября 2014

Или, если вы НЕ хотите, чтобы ваш класс был абстрактным, вы можете выдать свое собственное исключение MustOverrideException в метод, который вы хотите принудительно переопределить.

...