Konstruktoren sind spezielle Methoden mit denen Objekte einer Klasse initialisert werden. Das Java Laufzeitsystem legt automatisch einen Standardkonstruktor an wenn kein klassenspezifischer Konstruktor implementiert wird.
Konstruktoren haben die folgende Eigenschaften
- Der Konstruktor hat immer den Namen der Klasse als Methodenname
- Konstruktoren haben keine Rückgabewerte (auch kein Schlüsselwort void!)
- Die Auswahl des passenden Konstruktur erfolgt über die Typen der Eingabeparameter
- Konstruktoren können auch parameterlos sein
- Besitzt eine Klasse einen Konstruktor, so muss einer der Konstruktoren benutzt werden. Man kann die Klasse dann nicht mehr mit dem trivialen (System-)Konstruktor initialisieren.
Beispiel:
package s1.block4;
public class Employee {
    public String surName;
    public String firstName;
    public int employeeId;
    public double salary;
    /**
     * Der Konstruktor initialisert die Attribute für Employee
     * @param ln Nachname
     * @param fn Vorname
     * @param id Mitarbeiternummer
     * @param sal Gehalt. Gehalt wird im Konstruktor auf 100000 begrenzt
     */
    public Employee (String ln, String fn, int id, double sal) {
        surName = ln;
        firstName = fn;
        employeeId = id;
        if (sal > 100000) salary = 100000;
        else salary= sal;
     }
    public void printRecord() {
        System.out.print(employeeId + ", " + surName + " " + firstName);
        System.out.println(",Salary :" + salary);
    }
    /**
     * Teste die Konstruktoren
     * @param args werden nicht benutzt
     */
    public static void main(String[] args) {
        Employee ceo = new Employee("Doe","John",1,80000.0);
        Employee cio = new Employee("Doe","Jane",1,70000.0);
        ceo.printRecord();
        cio.printRecord();
    }
}
- Printer-friendly version
- Log in to post comments
- 7821 views