Автор Nevajno sovsem nevajno задал вопрос в разделе Java
Java. Есть ли разница между abstract классами и interface? и получил лучший ответ
Ответ от NAGIBATOR[гуру]
Абстрактный класс - это класс, у которого не реализован один или больше методов (некоторые языки требуют такие методы помечать специальными ключевыми словами).
Интерфейс - это абстрактный класс, у которого все методы не реализованы, все публичные и нет переменных класса.
Интерфейс нужен обычно, когда описывается только интерфейс (тавтология). Например, один класс хочет дать другому возможность доступа к некоторым своим методам, но не хочет себя "раскрывать". Поэтому он просто реализует интерфейс.
Абстрактный класс нужен, когда нужно семейство классов, у которых есть много общего. Конечно, можно применить и интерфейс, но тогда нужно будет писать много идентичного кода.
Источник: старший разработчик Java
Александр
(177232)
можно и штаны через голову снять... но зачем?
с новыми допущениями будет только новая джава работать...
ну единственное что могу сказать что нету множественного наследования от абстрактных классов, а для интерфейсов есть.
ты можешь реализовать несколько интерфейсов, но ты можешь унаследовать/расширить только один абстрактный класс...
C#. Какая разница между обычным классом, абстрактным классом, и интерфейсом?
Интрейфейс только с абстрактными методами, без членов.
Абстрактный класс - часть методов
подробнее...