Skip to content

Constructor

Een constructor is een speciale methode die wordt gebruikt om een object te initialiseren. Deze methode wordt aangeroepen als je een object maakt van je class.

Voorbeeld

Een class Aardappel heeft een constructor die de kleur, grootte, gewicht, datumGeplant en datumGeoogst van de aardappel instelt.

classDiagram
    class Aardappel {
        -String kleur
        -int grootte
        -int gewicht
        -Date datumGeplant
        -Date datumGeoogst
        +Aardappel(String kleur, int grootte, int gewicht, Date datumGeplant, Date datumGeoogst)
        +void groei()
        +void bloei()
        +void oogst()
    }

In code zou je de constructor als volgt kunnen implementeren:

In java is de constructor een methode met dezelfde naam als de class. De constructor heeft geen return type. Vergeet niet de constructor “public” te maken, anders kan je er geen objecten van maken.

public class Aardappel {
    private String kleur;
    private int grootte;
    private int gewicht;
    private Date datumGeplant;
    private Date datumGeoogst;

    public Aardappel(String kleur, int grootte, int gewicht, Date datumGeplant, Date datumGeoogst) {
        this.kleur = kleur;
        this.grootte = grootte;
        this.gewicht = gewicht;
        this.datumGeplant = datumGeplant;
        this.datumGeoogst = datumGeoogst;
    }
}

In Python is de constructor een methode met de naam __init__.

from datetime import datetime

class Aardappel:
    def __init__(self, kleur: str, grootte: int, gewicht: int, datum_geplant: datetime, datum_geoogst: datetime):
        self.kleur = kleur
        self.grootte = grootte
        self.gewicht = gewicht
        self.datum_geplant = datum_geplant
        self.datum_geoogst = datum_geoogst

In Typescript is de constructor een methode met de naam “constructor”. De constructor heeft geen return type.

class Aardappel {
    private kleur: string;
    private grootte: number;
    private gewicht: number;
    private datumGeplant: Date;
    private datumGeoogst: Date;

    constructor(kleur: string, grootte: number, gewicht: number, datumGeplant: Date, datumGeoogst: Date) {
        this.kleur = kleur;
        this.grootte = grootte;
        this.gewicht = gewicht;
        this.datumGeplant = datumGeplant;
        this.datumGeoogst = datumGeoogst;
    }
}

In C# is de constructor een methode met dezelfde naam als de class. De constructor heeft geen return type. Vergeet niet de constructor “public” te maken, anders kan je er geen objecten van maken.

public class Aardappel {
    private string kleur;
    private int grootte;
    private int gewicht;
    private DateTime datumGeplant;
    private DateTime datumGeoogst;

    public Aardappel(string kleur, int grootte, int gewicht, DateTime datumGeplant, DateTime datumGeoogst) {
        this.kleur = kleur;
        this.grootte = grootte;
        this.gewicht = gewicht;
        this.datumGeplant = datumGeplant;
        this.datumGeoogst = datumGeoogst;
    }
}
class Aardappel {
    constructor(kleur, grootte, gewicht, datumGeplant, datumGeoogst) {
        this.kleur = kleur;
        this.grootte = grootte;
        this.gewicht = gewicht;
        this.datumGeplant = datumGeplant;
        this.datumGeoogst = datumGeoogst;
    }
}