В интерфейсе у меня есть метод, который можно использовать в одной реализации, но не должен использоваться в другом. Я думаю об исключении, если кто-то должен использовать этот метод в этой конкретной реализации. (что не означает, что легко случайно встретить это исключение)
Чтобы быть более конкретным, метод getPlayer(String)
, который получает Player
по имени. Player
является клиентом, подключенным к серверу, однако во второй реализации мы не смогли бы получить подключенных клиентов, поскольку вторая реализация представляет другие (кэшированные и технически автономные) серверы, которые где-то хранятся в списке.
Любая помощь приветствуется. Дайте мне знать, поможет ли код пасты лучше описать характер сценария.
Я бы выбрал исключение IllegalStateException
Сигналы о том, что метод был вызван в незаконное или ненадлежащее время. Другими словами, среда Java или приложение Java не находятся в соответствующем состоянии для запрошенной операции.
или если ваша реализация просто не поддерживает его, вы можете пойти также с UnsupportedOperationException
Брошено, чтобы указать, что запрошенная операция не поддерживается.
Обязательно реализовать все методы интерфейса. Принятый ответ на этот вопрос может помочь.