В чём разница между...
 
Уведомления
Очистить все

В чём разница между интерфейсом и абстрактным классом в C#?

1 Записи
1 Пользователи
0 Likes
879 Просмотры
12-150 Okolokompa Форум
(@germint)
Estimable Member
Присоединился: 5 лет назад
Записи: 71
Создатель темы  

Вот некоторые из общих отличий между интерфейсом и абстрактным классом в C#.

  • Класс может реализовывать любое количество интерфейсов, но подкласс может максимально использовать только один абстрактный класс.
  • Абстрактный класс может иметь неабстрактные методы (конкретные методы), тогда как в случае интерфейса все методы должны быть абстрактными.
  • Абстрактный класс может объявлять или использовать любые переменные, в то время как интерфейсу это не разрешено.
  • В абстрактном классе все члены-данные или функции по умолчанию являются закрытыми, в то время как в интерфейсе все общедоступны, мы не можем изменить их вручную.
  • В абстрактном классе нам нужно использовать абстрактные ключевые слова для объявления абстрактных методов, в то время как в интерфейсе нам не нужно это использовать.
  • Абстрактный класс не может использоваться для множественного наследования, в то время как интерфейс может использоваться как множественное наследование.
  • Абстрактный класс использует конструктор, тогда как в интерфейсе у нас нет какого-либо типа конструктора.

   
Цитата
Поделиться: