Sobes.tech
Junior — Middle

Kas klassis on võimalik määratleda mitu konstruktorit sama signatuuriga?

sobes.tech AI

Vastus AI-lt

Ei, Java-s ei ole võimalik määratleda mitut konstruktorit sama signatuuriga ühes klassis.

Konstruktorite signatuur hõlmab parameetrite tüüpe ja järjekorda. Kui kaks konstruktorit omavad samu parameetrite tüüpe samas järjekorras, tekitab kompilaator vea ebamäärasuse tõttu.

Näiteks põhjustab selline kood vea:

public class Example {
    public Example(int a, String b) {}
    public Example(int x, String y) {} // Viga: duplikaatsignatuur
}

Konstruktorite ülekoormamiseks peavad nende signatuurid eristuma parameetrite arvu või tüüpide poolest.