Klasse public ist, sollte erklärt werden, in eine Datei mit dem Namen .java
Ich bin mit diesem problem, von dem ich nicht sicher bin, warum es verursacht.
"Klasse Konto public ist, sollte deklariert werden, in einer Datei namens Account.java"
Habe ich 5 Klassen in meinem Programm, die alle in der gleichen Datei und alle öffentlich sind:
- Klasse mit dem Namen Main enthält die main-Methode
- Klasse namens Konto ist Abstrakt
- 3 Klassen Account1, Account2, Account3 die eine Erweiterung der abstrakten Klasse
Ich den Namen meiner Datei Main.java und es gibt mir diese Fehlermeldung. Dann habe ich namens meiner Datei Account.java und ich habe den gleichen Fehler wieder.
Was soll ich tun?
- Teilen Sie die Klassen in mehrere Dateien?
- Also sollte ich 5 Dateien, und in jeder von Ihnen eine Klasse? Wird es funktionieren auf diese Weise? Auch in Anbetracht der Abstraktion Fall?
- Danke. Wenn ich änderte meine Klassen von der öffentlichen auf die private, wird das auch Einfluss auf das Programm überhaupt?
- Hängt davon ab, was Sie machen wollen. Die Regel ist, dass Sie müssen höchstens eine public-Klasse pro Datei (und die Datei-Namen übereinstimmen, diese öffentliche Klasse, wenn überhaupt).
- Teilen Sie diese in mehrere Dateien entfernen ODER den Zugang der öffentlichkeit Bezeichner von Klassen. Nur halten Sie es für ur Hauptklasse.
- Gut, eine öffentliche top-level-Klasse pro Datei. Es ist eine optionale Regel, auch das, aber eine, die
javac
erzwingt. - Wenn ich entfernen Sie die public-zugriffsspezifizierer, was sollte ich ersetzen Sie es mit?
- Nichts.Default access modifier bedeutet, dass wir nicht explizit deklarieren einer access-modifier für eine Klasse, Feld, Methode, usw.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie split up Sie Ihre Datei in 5 Dateien, so dass Sie nur eine Klasse pro Datei.
Dies sollte nicht wirklich schwer zu lösen, weil Sie schon die genau richtig. Man kann nicht 2 getrennte öffentliche Klassen in einer einzigen java-Datei. Also wie vorgeschlagen: erstellen Sie eine Datei Account.java für Ihre Konto-Klasse. Wenn Sie halten diese Klasse im gleichen Paket, es ist nichts anderes, was Sie zu tun haben.