Абстрактные классы и интерфейсы. Разница - 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();
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д