Ja, eine Quelldatei kann nur eine öffentliche Klasse enthalten. Da jede Kompilierungseinheit (Datei) nur eine öffentliche Klasse haben kann, dh jede Kompilierungseinheit über eine einzelne öffentliche Schnittstelle verfügt, die durch eine öffentliche Klasse dargestellt wird, kann diese Schnittstelle je nach Bedarf zahlreiche Klassen enthalten, die Paketzugriffsberechtigungen unterstützen.
Die Betriebsumgebung dieses Tutorials: Windows10-System, Java8, Dell G3-Computer.
Frage: Kann eine „.java“-Quelldatei mehrere Klassen (keine inneren Klassen) enthalten? Welche Einschränkungen gibt es?
Antwort: Es kann mehrere Klassen geben, aber es kann nur eine öffentliche Klasse geben, und der Name der öffentlichen Klasse muss mit dem Dateinamen übereinstimmen. Eine Datei kann nur nicht öffentliche Klassen enthalten. Wenn es nur eine nicht öffentliche Klasse gibt, kann sich diese Klasse vom Dateinamen unterscheiden.
Warum kann es in einer Java-Quelldatei nur eine öffentliche Klasse geben?
Es gibt drei Absätze wie diesen im Buch Java Programming Thoughts (Vierte Auflage) (6.4 Klassenzugriffsrechte):
1. Jede Kompilierungseinheit (Datei) kann nur eine öffentliche Klasse haben, was bedeutet, dass jede Kompilierungseinheit über eine öffentliche Klasse verfügt eine einzelne öffentliche Schnittstelle, dargestellt durch eine öffentliche Klasse. Diese Schnittstelle kann so viele Klassen enthalten, wie zur Unterstützung des Paketzugriffs erforderlich sind. Wenn in einer Kompilierungseinheit mehr als eine öffentliche Klasse vorhanden ist, gibt der Compiler eine Fehlermeldung aus.
2. Der Name der öffentlichen Klasse muss genau mit dem Dateinamen übereinstimmen, der die Kompilierungseinheit enthält, einschließlich Groß- und Kleinschreibung. Wenn sie nicht übereinstimmen, erhalten Sie außerdem einen Kompilierungsfehler.
3. Obwohl dies nicht sehr häufig vorkommt, ist es möglich, dass die Kompilierungseinheit überhaupt keine öffentlichen Klassen enthält. In diesem Fall können Sie der Datei einen beliebigen Namen geben.
Was passiert, wenn die Java-Quelldatei keine öffentliche Klasse enthält?
Zu diesem Zeitpunkt wird das Programm kompiliert und drei .class-Dateien werden unter dem entsprechenden Pfad generiert. Klicken Sie direkt auf „Ausführen“, das Programm wird nicht ausgeführt. Klicken Sie mit der rechten Maustaste auf das Programm. -----> Ausführen als -----> Java-Anwendung
Persönliche Zusammenfassung: Eine Kompilierungseinheit (Java-Datei) kann mehrere Klassen haben und während der Kompilierung werden mehrere verschiedene .class-Dateien generiert. Die .class-Datei ist die Datenquelle für die Programmausführung. Java verwendet öffentliche Klassen als Datenschnittstelle jeder Kompilierungseinheit. Es kann nur eine geben, andernfalls kann es keine Java-Dateien mit mehreren Klassen verarbeiten. Wenn eine Kompilierungseinheit (Java-Datei) über mehrere nicht öffentliche Klassen verfügt, muss die Datenquelle zur Laufzeit ausgewählt werden. Empfehlungen für entsprechende Video-Tutorials:
Java-Video-Tutorial
Das obige ist der detaillierte Inhalt vonIst in einer Java-Quelldatei eine öffentliche Klasse erforderlich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!