Не, конструкторите могат да бъдат публични, частни, защитени или по подразбиране (без модификатор за достъп). Направата на нещо лично не означава, че никой няма достъп до него. Това просто означава, че никой извън класа няма достъп до него. Така че частният конструктор също е полезен.
Могат ли конструкторите да бъдат частни в Java?
Частен конструктор в Java се използва за ограничаване на създаването на обекти. Това е специален конструктор на екземпляри, използван в статичните класове само за членове. Ако конструкторът е деклариран като частен, тогава обектите му са достъпни само в рамките на декларирания клас. Нямате достъп до неговите обекти извън класа на конструктора.
Конструкторите по подразбиране частни ли са или публични?
В C++ конструкторът се извиква автоматично, когато се създаде обект на клас. По подразбиране конструкторите са дефинирани в публична секция на клас.
Защо обикновено декларираме конструктора като публичен член в Java?
Публичният конструктор също означава може да бъде достъпен извън класа Другият клас също може да ги получи по прост начин обаче, ако направим конструктора като частен, той не е достъпен извън класа. Също така правим конструктора конструктора като публичен, за да инициализираме класа навсякъде в програмата.
Как да направя своя конструктор публичен?
Направете конструктора публичен, ако разрешите на вашия клиентски код извън пакета да инстанцира вашия обект. Ако не го направишискам това (защото обектът е специфичен за пакета или самият обект не може да бъде инстанциран директно) use package-private.