В чем разница между абстрактным классом и классом, в котором все его методы абстрактны?

Интересно, в чем разница в Java между классом abstract и классом, который имеет все свои методы abstract ? Я имею в виду, является ли абстрактный класс просто классом, методы которого автоматически получают абстрактный ?

15
задан FullStackDeveloper 20 August 2017 в 16:53
поделиться

1 ответ

Абсолютно нет. Действительно, класс может быть абстрактным без каких-либо методов, которые являются абстрактными, хотя это относительно редко (см. Комментарий Марка ниже для примера). С другой стороны, если у класса есть какие-либо абстрактные методы, то он должен быть объявлен абстрактным.

Вообще говоря, цель абстрактного класса - предоставить скелету некоторое неабстрактное поведение, но другие биты все еще должны быть заполнены подклассами. Это можно использовать, например, с шаблоном метода шаблона .

22
ответ дан 1 December 2019 в 03:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: