Добавление дополнительного метода в интерфейс - PullRequest
6 голосов
/ 20 сентября 2010

У меня каверзный вопрос по интерфейсу. Пожалуйста, попробуйте дать мне решение для этого.

Сценарий: Я написал интерфейс с пятью методами. Также я реализовал более 100 классов, используя этот интерфейс. Теперь мне нужно добавить еще один метод в интерфейс. Следовательно, мне нужно будет определить один и тот же метод во всех классах. Как я могу избежать этого ???

Пожалуйста, ответьте ...

Спасибо, Акиф

Ответы [ 2 ]

24 голосов
/ 20 сентября 2010

Не могли бы вы избежать добавления метода к интерфейсу, создав вместо этого новый интерфейс, который наследуется от этого первого интерфейса, а затем изменив только те классы, для которых вам нужен этот новый метод? Следовательно, если foo не нужен новый метод, оставьте его в покое, а если bar, измените его на новый интерфейс.

0 голосов
/ 04 февраля 2016

Java 8 имеет метод по умолчанию , который вы можете добавить к интерфейсу

https://docs.oracle.com/javase/tutorial/java/IandI/defaultmethods.html

Все подклассы, которые не переопределяют этот метод, прибегнут к стандартномуреализация в интерфейсе

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...