Video: String Theory Explained – What is The True Nature of Reality? 2025
A konstruktør i Java er en blokk med kode som ligner en metode som kalles når en forekomst av en objekt er opprettet. Her er de viktigste forskjellene mellom en konstruktør og en metode:
-
En konstruktør har ingen returtype.
-
Konstruktørens navn må være det samme som navnet på klassen.
-
I motsetning til metoder anses ikke byggere å være medlemmer av en klasse.
-
En konstruktør kalles automatisk når en ny forekomst av en gjenstand opprettes.
Her er grunnformatet for koding av en konstruktør:
offentlig klassenavn (parameterliste) [kaster unntak …] {uttalelser …}
Det offentlige søkeordet indikerer at andre klasser kan få tilgang til konstruktøren. ClassName må være det samme som navnet på klassen som inneholder konstruktøren. Du kodes parameterlisten på samme måte som du kodes den for en metode.
Legg merke til at en konstruktør kan kaste unntak hvis det møter situasjoner som den ikke kan gjenopprette fra.
En konstruktør lar deg gi innledende verdier for klassefelt når du lager objektet. Anta at du har en klasse som heter Skuespiller som har felt som heter fornavn og etternavn. Du kan lage en konstruktør for skuespillerklassen:
offentlig skuespiller (streng først, streng sist) {firstName = first; lastName = last;}
Så lager du en forekomst av skuespillerklassen ved å ringe denne konstruktøren:
Skuespiller a = ny skuespiller ("Arnold", "Schwarzenegger");
Et nytt skuespillerobjekt for Arnold Schwarzenegger er opprettet.
Som metoder kan konstruktører overbelastes. Med andre ord kan du gi mer enn en konstruktør for en klasse hvis hver konstruktør har en unik signatur. Her er en annen konstruktør for skuespillerklassen:
offentlig skuespiller (streng først, streng sist, boolsk god) {firstName = first; lastName = last; goodActor = good;}
Denne konstruktøren lar deg lage et skuespillerobjekt med informasjon utover skuespillerens navn:
Skuespiller a = ny skuespiller ("Arnold", "Schwarzenegger", falsk);
Hvis du ikke gir en konstruktør til en klasse, oppretter Java automatisk en standardkonstruktor som ikke har noen parametere og initierer ikke noen felt. Denne standardkonstruktøren kalles hvis du angir det nye søkeordet uten å passere parametere. For eksempel:
Ball b = ny Ball ();
Her opprettes en variabel av typen Ball ved å bruke standardkonstruktøren for Ball-klassen.
Hvis du eksplisitt erklærer noen konstruktører for en klasse, oppretter Java ikke en standardkonstruktør for klassen.Som et resultat, hvis du erklærer en konstruktør som aksepterer parametere og fortsatt vil ha en tom konstruktør (uten parametere og ingen kropp), må du eksplisitt erklære en tom konstruktør for klassen.
