Förenklat man säga att konstruktorn är en slags "metod" som skapar en instans av en klass (ett objekt). En konstruktor skiljer sig dock från en metod på flera sätt, konstruktorn kan inte returnera någon datatyp, ärva från en parent, etc.. En klass kan ha flera överlagrade konstruktorer som skiljs åt genom att de tar olika parametrar. Vi kan tex låtsas att klassen Bil har följande konstruktorer: public Bil() { ... } public Bil(String regNr) { ... } public Bil(String regNr, int årsModell) { ... } public Bil(String regNr, boolean ärTjejKörd) { ... } public Bil(String regNr, int årsModell, boolean ärTjejKörd) { ... } ..osv, in i det oändliga Vilken av konstruktorerna som kommer att användas beror på vilka argument du skickar med då du skapar ditt Bil-objekt. Bil b1 = new Bil(); Bil b1 = new Bil("ABC-123"); Bil b1 = new Bil("ABC-123", 1997); Bil b1 = new Bil("ABC-123", true); Bil b1 = new Bil("ABC-123", 1997, true); Jag brukar rekommendera mina elever (nu lät jag viktig ;P) att alltid skriva en defaultkonstruktor som tilldelar eventuella instansvariabler standardvärden, även om den inte används i uppgiften.
mensvärk är livets krydda.