#c_sharp
Что такое интерфейс в C# и с чем его едят. Если можно, на русском. )) Я вот так понимаю. Значит, если класс должен по-любому реализовать методы интерфейса, то получается, все классы, что наследуют интерфейс, должны реализовать его методы?
Ответы
Ответ 1
Интерфейс - это в каком-то смысле договор. В случае, если вы наследуете интерфейс, вы заключаете договор, по которому обязаны реализовать все методы этого интерфейса в своем классе. Если ваш класс не реализует какой-то метод, значит, он автоматически является абстрактным классом, и вы по нему не имеете права создавать объект, но можете этот класс наследовать в другом классе и реализовать метод уже в нем. Если ваш абстрактный класс уже реализовал какой-то метод интерфейса, то потомкам этого абстрактного класса эти методы реализовывать не обязательно. Интерфейсы часто используются в различных библиотеках, где методы ждут определенный объект, который в обязательном порядке должен реализовать метод от какого-то интерфейса.Ответ 2
Здесь и здесь есть хорошие статьи по этому поводу. К вашему вопросу. Все методы в интерфейсе являются абстрактными, и любой класс (не абстрактный, спасибо gympi), наследующий тот или иной интерфейс, обязан реализовывать все его методы.
Комментариев нет:
Отправить комментарий