Абстрактные классы и интерфейсы. Разница - C#
Формулировка задачи:
Вот хоть убейте, не могу понять разницы между абстрактным классом и интерфейсом. До этого изучал C++, там не было интерфейсов, скорее всего из-за этого проблемы моего непонимания...
Нет, я понимаю, что в абстрактном классе могут быть методы, которые имеют реализацию, но хоть один метод должен быть абстрактным, напротив в интерфейсах все методы должны быть чистым протоколом...
В этом чтоли только различие? Ну не делай ты в абстрактном классе методов с реализацией и все, что его будет отличать от интерфейса?
Или интерфейсы сделаны для того, чтобы можно было реализовывать "неполное" множественное наследование? Ну так не запрещали бы множественного наследования...
Какие еще различия есть? Пока я не увидел глобальной разницы...
Решение задачи: «Абстрактные классы и интерфейсы. Разница»
textual
Листинг программы
interface A { int c(int k, int l); } interface C { int c(int k, int l); } class B : A, C { int A.c(int k, int l) { throw new NotImplementedException(); } int C.c(int k, int l) { throw new NotImplementedException(); } public int c(int k, int l) { throw new NotImplementedException(); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д