class x is public, should be declared [...]

Problem

Folgende unten stehende Meldung erscheint, wenn eine Übung kompiliert werden soll. Der Quelltext der Übung ist korrekt eingegeben worden.

Verwendet wird:

D:\temp>java -version java version "1.5.0_22" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_22-b03)
Java HotSpot(TM) Client VM (build 1.5.0_22-b03, mixed mode, sharing)

Meldung

D:\temp>javac seite-11-name-der-uebung.java
seite-11-name-der-uebung.java:9: class MeineErsteUebung is public, should be declared in a file named MeineErsteUebung.java public class MeineErsteUebung {
^
1 error

Hintergrund

Um die Übungen in einem Ordner leichter im Buch wieder zu finden, wurde eine bestimmte Art der Bezeichnung für die Übungsdateien gewählt. Hier 'seite-11-name-der-uebung'. Auf Umlaute wurde verzichtet.

Im Quelltext steht jedoch ein anderer Name.

public class MeineErsteUebung {
	public static void main (String[] args) {
[...]

Erklärung

Die Meldung besagt, dass die Datei den Namen haben soll, der in

'public class MeineErsteUebung'

angegeben ist.

Schlussfolgerung

Die zu kompilierende Datei muss umbenannt werden, in diesem Beispiel in

MeineErsteUebung.java

Das Kompilieren hat geklappt. Groß- und Kleinschreibung beachten.