Есть ли веские причины для публичного конструктора абстрактного классаJAVA

Программисты JAVA общаются здесь
Anonymous
Есть ли веские причины для публичного конструктора абстрактного класса

Сообщение Anonymous »

Невозможно создать объект, напрямую вызывая конструктор класса абстрактного . Конструктор класса абстрактного можно назвать только из производного класса. Поэтому мне кажется , что конструкторы абстрактного класса должны быть либо защищены , либо Packer-Private (последние для необычных случаев ограничения использования конструктора для полученных классов в пакете). Тем не менее, Java позволяет конструктору абстрактного класса быть публичным .

Есть ли какие-либо обстоятельства, при которых это полезно для объявления конструктора абстрактного public , а не Proteceed или Packet-Private? Вопрос «Модификатор доступа к конструктору абстрактного класса»: ясно, что вы можете объявить конструктор как публичный ; Я хочу знать, есть ли когда -нибудь какая -то хорошая причина для этого. Мне кажется, что нет. Я вижу, что C# имеет аналогичную особенность.

Подробнее здесь: https://stackoverflow.com/questions/479 ... ract-class

Вернуться в «JAVA»