Měly by být konstruktory veřejné Java?

Obsah:

Měly by být konstruktory veřejné Java?
Měly by být konstruktory veřejné Java?
Anonim

Ne, konstruktory mohou být veřejné, soukromé, chráněné nebo výchozí (žádný modifikátor přístupu). Udělat něco soukromého neznamená, že k tomu nikdo nemá přístup. Znamená to pouze, že nikdo mimo třídu k němu nemá přístup. Takže soukromý konstruktor je také užitečný.

Mohou být konstruktéři soukromí v Javě?

Privátní konstruktor v Javě se používá k omezení vytváření objektů. Jedná se o speciální konstruktor instance používaný ve statických třídách pouze pro členy. Pokud je konstruktor deklarován jako soukromý, pak jeho objekty jsou přístupné pouze z deklarované třídy. Nemůžete přistupovat k jeho objektům mimo třídu konstruktoru.

Jsou výchozí konstruktory soukromé nebo veřejné?

V C++ je konstruktor volán automaticky, když je vytvořen objekt třídy. Ve výchozím nastavení jsou konstruktory definovány ve veřejné části třídy.

Proč obecně deklarujeme konstruktor jako veřejného člena v Javě?

Veřejný konstruktor také znamená může být přístupný mimo třídu Druhá třída je také může získat jednoduchým způsobem, pokud však konstruktor nastavíme jako soukromý, nebude přístupný mimo třídu. Také uděláme konstruktor konstruktorem jako veřejným pro inicializaci třídy kdekoli v programu.

Jak mohu svůj konstruktor zveřejnit?

Zveřejněte konstruktor, pokud povolíte, aby váš klientský kód mimo balíček vytvořil instanci vašeho objektu. Pokud nechtít to (protože objekt je specifický pro balíček nebo samotný objekt nelze přímo vytvořit) use package-private.

Doporučuje: