Видео: Може ли Java абстрактният клас да има конструктор?
2024 Автор: Lynn Donovan | [email protected]. Последно модифициран: 2023-12-15 23:43
Да, ан абстрактен клас може да има а конструктор в Java . Вие мога или изрично предоставят a конструктор да се абстрактен клас или ако не го направите, компилаторът ще добавяне по подразбиране конструктор без аргумент в абстрактен клас . Това е вярно за всички класове и се отнася и за an абстрактен клас.
Следователно, може ли конструкторът да бъде абстрактен в Java?
Вие мога нямам абстрактен конструктор , като абстрактно означава, че трябва да предоставите реализацията за това в даден момент от вашия подклас. Но не можете да отмените конструктор . Там ще няма смисъл да имаш абстрактен конструктор : Вие ще винаги се обадете на конструктор от детски клас, а не от базов клас.
По същия начин, как се нарича конструктор на абстрактен клас? Можете да дефинирате a конструктор в абстрактен клас , но не можете да конструирате този обект. Въпреки това, бетонната под- класове може (и трябва) повикване един от конструктори дефинирани в абстрактно родител клас . не можеш повикване ан конструктор на абстрактен клас с клас израз за създаване на инстанция, т.е.
По същия начин хората питат защо един абстрактен клас има конструктор?
А конструктор в Java всъщност не "изгражда" обекта, той се използва за инициализиране на полета. Представете си, че вашият абстрактен клас има полета x и y и че винаги искате те да бъдат инициализирани по определен начин, без значение какъв действителен конкретен подклас е създаден в крайна сметка.
Може ли абстрактният клас да има обекти в Java?
Защото е абстрактно и ан обект е бетон. Не, дизайнерите не са предоставили начин. Защото ан абстрактен клас е непълен клас (непълен в смисъла, който съдържа абстрактно методи без тяло и изход) не можем да създадем екземпляр или обект ; по същия начин, който казвате за интерфейс.
Препоръчано:
Може ли абстрактният клас да има конструктор?
Да, абстрактен клас може да има конструктор в Java. Можете или изрично да предоставите конструктор на абстрактния клас, или ако не го направите, компилаторът ще добави конструктор по подразбиране без аргумент в абстрактния клас. Това важи за всички класове и важи и за абстрактен клас
Може ли абстрактният клас да има модификатори за достъп?
Java клас, съдържащ абстрактен клас, трябва да бъде деклариран като абстрактен клас. Един абстрактен метод може да зададе само модификатор на видимост, публичен или защитен. Тоест, абстрактен метод не може да добави статичен или окончателен модификатор към декларацията
Може ли клас с частен конструктор да бъде наследен в Java?
5 отговора. Java не пречи на подкласове на клас с частни конструктори. Това, което предотвратява, са подкласове, които нямат достъп до конструктори от своя супер клас. Това означава, че частен конструктор не може да се използва в друг файл на класа и локален конструктор на пакет не може да се използва в друг пакет
Може ли един клас да има конструктор?
Възможно е класът да няма конструктор. (Важно разграничение, което трябва да се направи тук, е, че JVM не изисква всички файлове на класа да имат конструктор; обаче всеки клас, дефиниран в Java, има конструктор по подразбиране, ако конструкторът не е изрично деклариран
Може ли абстрактният клас да има неабстрактни методи?
Да, можем да имаме абстрактен клас без абстрактни методи, тъй като и двете са независими понятия. Декларирането на клас абстрактен означава, че той не може да бъде инстанциран самостоятелно и може да бъде само подклас. Декларирането на метод абстрактен означава, че Method ще бъде дефиниран в подкласа