• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Java-Tutorial: immer Probleme beim Kompilieren

147852369

Mitglied
Hallo Forum,

mich interessiert, warum generell nie irgendein Codebeispiel aus diesem Buch ("IT-Handbuch für Fachinformatiker") funktioniert?!

Was ist an diesem Beispiel falsch?
Code:
package person;

public class Person {
    // Eigenschaften
    private String name;
    private String vorname;
    private int alter;
    
    // Konstruktor
    public Person (String n, String v, int a) {
        this.name       = n;
        this.vorname    = v;
        this.alter      = a;
    }
    
    // Methoden
    public void geburtstag() {
        this.alter++;
    }
    
    public String getName() {
        return this.vorname + " " + this.name;
    }
    
    public int getAlter() {
        return this.alter;
    }
    
} // public class Person


public class PersonenTest() {
    public static void main (String args[]) {
        Person klaus = new Person ("Schmitz", "Klaus", 42);
        System.out.println ("Person: " + klaus.getName());
        klaus.geburtstag();
        System.out.println("Neues Alter: " + klaus.getAlter());
    }
} // PersonenTest()

Fehlerausgabe:
java.lang.ExceptionInInitializerError
Caused by: java.lang.RuntimeException: Uncompilable source code - class PersonenTest is public, should be declared in a file named PersonenTest.java
at person.PersonenTest.<clinit>(Person.java:32)
Exception in thread "main" Java Result: 1

Muss ich denn tatsächlich jede Klasse in eine eigene Datei packen?
 
Werbung:
Einfach gesagt: Ja. Ob es theoretisch auch anders geht, kann ich dir nicht sagen. Aber in Java ist das eigentlich so.

Das löst jedenfalls die Fehlermeldung an der Stelle aus.
 
Die Fehlermeldung verschwindet tatsächlich.
Sehr cool, dass man für jede Klasse eine eigene Datei anlegen muss. -.- Hat auch seine Vorteile.

Vielen Dank.
 
Werbung:
Weil ich in der Lernphase bin und meine Klassen nur 3-4 Zeilen Code haben, sodass ich solche Klassen auch gut in eine Datei packen und wie eine Bibliothek behandeln könnte.
 
Zurück
Oben