Интерфейс знает своих разработчиков - PullRequest
1 голос
/ 14 февраля 2011

Можно ли как-то указать в интерфейсе, что все его реализации будут унаследованы от определенного абстрактного класса?

Ответы [ 4 ]

4 голосов
/ 14 февраля 2011

Вы можете сделать это известным через комментарий / документацию, но вы не можете применить его через проверки / синтаксис во время компиляции.

Если вы определяете базовый класс для всех реализаций, и он действительно сокращает объем работы для разработчиков, нет причин, почему они этого не делают. например ICollection и CollectionBase в .Net framework

1 голос
/ 14 февраля 2011

Если вы не хотите раскрывать интерфейс, либо определите методы интерфейса как абстрактные методы внутри вашего абстрактного класса и покончите с интерфейсом, либо сделайте интерфейс внутренним и не открывайте его своим пользователям.

0 голосов
/ 14 февраля 2011

Непосредственно "НЕТ"
Если вы не найдете какой-то хитрости / обходного пути, в котором я сильно сомневаюсь!

0 голосов
/ 14 февраля 2011

Поместите интерфейс в абстрактный класс и вместо этого выведите его.

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