Mitu konstruktorit saab klassil c-s olla?

Mitu konstruktorit saab klassil c-s olla?
Mitu konstruktorit saab klassil c-s olla?
Anonim

Seal võib klassis olla rohkem kui üks konstruktor defineeritud. Seda nimetatakse konstruktori ülekoormamiseks. Tavaliselt on olemas konstruktor, millel pole parameetreid (konstruktori nimele järgnevates sulgudes pole midagi), nagu ül altoodud maailma konstruktor. Seda nimetatakse ka argumentideta konstruktoriks.

Mitu konstruktorit saab klassis eksisteerida?

Rangelt võttes piirab JVM-i klassifailivorming meetodite arvu (kaasa arvatud kõik konstruktorid) klassi jaoks alla 65536. Tom Hawtini sõnul on tõhus piirang 65527. Iga meetodi signatuur hõivab konstantses kogumis pesa.

Kas klassil võib olla mitu konstruktorit?

Kahe (või enama) konstruktori olemasolu klassis nimetatakse konstruktori ülekoormuseks. Klassil võib olla mitu konstruktorit, mis erinevad oma parameetrite arvu ja/või tüübi poolest. Siiski ei saa olla kahte täpselt samade parameetritega konstruktorit.

Kas C-klassis võib olla rohkem kui üks konstruktor?

C++-s võib meil olla rohkem kui üks konstruktor klassis, mille nimi on sama, kui igaühel on erinev argumentide loend. Seda kontseptsiooni tuntakse konstruktori ülekoormusena ja see on üsna sarnane funktsioonide ülekoormusega.

Kas saate konstruktori kutsuda?

Konstruktori kutsumine meetodist

Ei, konstruktorit ei saa kutsudameetodist. Ainus koht, kust saate kutsuda konstruktoreid, kasutades sõna "selle" või "super", on teise konstruktori esimene rida. Kui proovite konstruktoreid mujal selgesõnaliselt kutsuda, genereeritakse kompileerimisaja viga.

Soovitan: