2013-03-15 4 views
1

Я хочу знать четкую идею о принятии решения о том, следует ли идти за , писать интерфейс или писать абстрактный класс. Также предоставляют абстракцию в java.My question где использовать? ,Когда нужно перейти на интерфейс и когда перейти на абстрактный класс

ответ

0

Главное отличие методов Java-интерфейса неявно абстрактно и не может иметь реализаций. Абстрактный класс Java может иметь методы экземпляра, которые реализуют поведение по умолчанию.

Переменные, объявленные в интерфейсе Java, по умолчанию являются окончательными. Абстрактный класс может содержать не конечные переменные.

Пользователи интерфейса Java по умолчанию являются общедоступными. Абстрактный класс Java может иметь обычные вкусы членов класса, таких как частные, защищенные и т. Д.

Интерфейс Java должен быть реализован с использованием ключевого слова «реализует»; Абстрактный класс Java должен быть расширен с использованием ключевого слова "extends".

Интерфейс может расширить только другой интерфейс Java, абстрактный класс может расширить другой класс Java и реализовать несколько интерфейсов Java.

Класс Java может реализовывать несколько интерфейсов, но он может распространять только один абстрактный класс.

Интерфейс абсолютно абстрактный и не может быть создан; Явный абстрактный класс также не может быть создан, но может быть вызван, если существует main().

По сравнению с абстрактными классами Java, интерфейсы java медленны, так как для этого требуется дополнительная косвенность.

+1

Мне не нужны различия в классе абстрактных символов и интерфейсе. Но мне нужно, где использовать абстрактный класс и где использовать интерфейс. –

Смежные вопросы