Junior — Middle
Ar galima klasėje apibrėžti kelis konstruktorius su ta pačia parašu?
sobes.tech AI
Atsakymas iš AI
Ne, Java nėra leidžiama apibrėžti kelių konstruktorių su ta pačia signatūra viename klase.
Konstruktoriaus signatūra apima parametrų tipus ir tvarką. Jei du konstruktoriai turi tuos pačius parametrų tipus toje pačioje tvarkoje, kompiliatorius sukels klaidą dėl neaiškumo.
Pavyzdžiui, toks kodas sukels klaidą:
public class Example {
public Example(int a, String b) {}
public Example(int x, String y) {} // Klaida: dubliuojama signatūra
}
Konstruktorių perkriptimui jų signatūros turi skirtis pagal parametrų skaičių arba tipus.