Форум программистов, компьютерный форум, киберфорум
Наши страницы
Objective-C
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.59/27: Рейтинг темы: голосов - 27, средняя оценка - 4.59
r4j3bi7
0 / 0 / 0
Регистрация: 31.01.2017
Сообщений: 10
1

Чем абстрактный класс отличается от интерфейса?

04.02.2017, 13:13. Просмотров 5229. Ответов 2
Метки нет (Все метки)

Привет всем гуру!
Собственно сабж. Желательно с примерами

Заранее благодарен!
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.02.2017, 13:13
Ответы с готовыми решениями:

Чем отличается абстрактный класс от интерфейса
Добрый день. Вопрос не теоретический а прикладной, т.е. как это отразится на использовании в самой...

Чем отличается наследование реализации от наследования интерфейса?
Чем отличается наследование реализации от наследования интерфейса?

Чем класс отличается от структуры?
Господа, скажите еще пожалуйста, чем класс отличается от структуры???

Чем отличается класс от процедуры
Я сейчас изучаю С++, и хотел бы полностью понять в чем смысл класс, чем он, например, отличается от...

Чем отличается вложенный класс от наследуемого
Ребят, объясните на простом и понятном языке, чем отличается вложенный класс от наследуемого? И...

2
Митя800
66 / 66 / 19
Регистрация: 13.07.2015
Сообщений: 219
07.02.2017, 16:18 2
Гради Буч в помощь.
0
makemelaugh
8 / 8 / 3
Регистрация: 12.12.2013
Сообщений: 30
Завершенные тесты: 1
27.02.2017, 23:05 3
Короткое различие.

Абстрактный класс — это класс, у которого не реализован один или больше методов (некоторые языки требуют такие методы помечать специальными ключевыми словами).

Интерфейс — это абстрактный класс, у которого все методы не реализованы, все публичные и нет переменных класса.

Интерфейс нужен обычно, когда описывается только интерфейс (тавтология). Например, один класс хочет дать другому возможность доступа к некоторым своим методам, но не хочет себя "раскрывать". Поэтому он просто реализует интерфейс.

Абстрактный класс нужен, когда нужно семейство классов, у которых есть много общего. Конечно, можно применить и интерфейс, но тогда нужно будет писать много идентичного кода.

В некоторых языках (С++) специального ключевого слова для обозначения интерфейсов нет.

Можно считать, что любой интерфейс — это уже абстрактный класс, но не наоборот.

Не мое, но формулировка понравилась. Взял со stackoverflow. Форум блочит ссылку
1
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.02.2017, 23:05

Чем отличается данный обобщенный класс от коллекции?
Не понимаю Есть два класса public class XY<T> { private T x, y; public XY(T a =...

Чем отличается обычный класс от класса с модификатором static?
Объясните на пальцах, чем отличается просто класс и со свойством static. В мсдн прошу не тыкать. А...

Так чем всё-таки отличается класс от конструктора?
Доброго. На курсах Codecademy класс фактически приравнивают к конструктору: и далее постоянно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru