Konstruktoren

Hier werden mehrere Konstruktoren verwendet. Die Tatsache, dass ja ein und derselbe Name für mehrere verschiedene Methoden verwendet wird, nennt man Überladen. Überladene Methoden müssen eindeutig unterscheidbar sein. Das kann auf 2 unterschiedliche Weisen geschehen:

oder durch beides…

    public Karol (int neuesX, int neuesY, int neuesZ, String neuerName) {
        x = neuesX;
        y = neuesY;
        z = neuesZ;
        name = neuerName;
    }
 
    public Karol (int neuesX, int neuesY, int neuesZ) {
        x = neuesX;
        y = neuesY;
        z = neuesZ;
    }
 
    public Karol (String neuerName) {
        this (100, 100, 100);
        name = neuerName;
    }
 
    public Karol () {
        this (100, 100, 100);
        name = "Jupp";
    }

Im 3. Konstruktor wird ein anderer Konstruktor wiederverwendet. Das kann man nur mit einem Konstruktor machen und auch nur in der ersten Zeile, sonst macht das Java selbst mit dem Standardkonstruktor.