Skip to main content

Mi az alapértelmezett konstruktor?

Az alapértelmezett konstruktor egy speciális módszer, amely objektum-orientált programozásban létrehoz és inicializálja az objektumot.Többféle konstruktor létezik, de az alapértelmezett konstruktornak meg kell felelnie a két konkrét kritérium egyikének, az objektum létrehozása és inicializálása mellett.Vagy nem tartalmazhat paraméterekkel, ebben az esetben nullary konstruktornak is nevezhető, vagy az alapértelmezett értékeket hozzá kell rendelnie minden olyan paraméterhez, amelyet képes beállítani.Egyes számítógépes nyelvek implicit módon adják meg az alapértelmezett nullary konstruktorot, ha a programozó egyáltalán nem adja meg a konstruktort.Miután bármely konstruktortípus megírja, az alapértelmezett nulla-konstruktort már nem határozták meg, és szükség esetén kifejezetten meg kell írni.Az alosztály -konstrukcióknak mindig hívniuk kell a szuperosztály -konstruktorokat, mielőtt bármit megtennének az alosztályra.Egyes nyelveken, például a Java , egy alosztály -konstruktor hallgatólagosan szuperosztály -alapértelmezett nullary konstruktort hív.Ha egy szuperosztály -alapértelmezett nulla -konstruktor nem létezik, akkor az alosztály tárgyát nem lehet megfelelően felépíteni.Az alosztályoknak ebben az esetben továbbra is lehetnek az alapértelmezett konstruktor, de a rendelkezésre álló szuperosztály -konstruktort helyesen kell megnevezni, talán az alosztályhoz egyedi alapértelmezett értékek átadásával.

A programozóknak meg kell adnia és dokumentálniuk kell a módszerek számát, de hátránya annak is, hogy a kód karbantartása és megértése megnehezítse.Egyes programozók az alapértelmezett konstruktor mulasztását rossz gyakorlatnak tekintik, mások nem.Nincs semmi, ami megakadályozza, hogy az egyes programozók bekapcsolódjanak ezen programozási módszerek egyikére, tehát az alapértelmezett nullary konstruktor bevonása a kódba nagyrészt a programozó stilisztikai választása.Ha a konstruktort tartalmazzák, a legtöbb gondolatiskola azt diktálja, hogy azt kommentálni és dokumentálni kell, mint bármely más konstruktor vagy módszer.-Ez a konstruktor specifikus képességeit biztosítja annak az osztálynak a alapján, amelyben megadva van.A nyilvános alapértelmezett konstruktor felhasználható egy új objektum létrehozására egy másik osztályból, míg a védett konstruktor csak a saját osztályából és az alosztályokból hívható meg.A védett alapértelmezett konstruktorokat gyakran látják az öröklési hierarchiában.A magánszerkezeteket általában csak az önálló osztályokban alkalmazzák, ahol valamilyen gyári módszer elérhető, nem pedig a programozónak.