Nein , wir können eine Top-Level-Klasse nicht als privat oder geschützt deklarieren. Es kann public oder default (keine Modifikatoren) sein. Wenn keine Modifikatoren vorhanden sind, sollte es Standardzugriff haben.
// A top level class public class TopLevelClassTest { // Class body }Wenn eine Klasse der obersten Ebene als privat deklariert ist, meldet der Compiler einen Fehler und meldet „Der Modifikator private ist hier nicht zulässig“. Dies bedeutet, dass Klassen der obersten Ebene nicht privat sein können, und das Gleiche gilt für den geschützten Zugriffsmodifikator. Geschützt bedeutet, dass jede Klasse im selben Paket sowie Unterklassen auf das Mitglied zugreifen können, auch wenn sie sich in einem anderen Paket befinden. Klassen der obersten Ebene können nur öffentliche, abstrakte und endgültige Modifikatoren haben oder möglicherweise keine Klassenmodifikatoren definieren. Dies wird als Standard-/Paketzugriff bezeichnet. Wir können die innere Klasse als privat oder geschützt deklarieren, dies ist jedoch in der äußeren Klasse nicht zulässig Klassen.
protected class ProtectedClassTest { int i = 10; void show() { System.out.println("Declare top-level class as protected"); } } public class Test { public static void main(String args[]) { ProtectedClassTest pc = new ProtectedClassTest(); System.out.println(pc.i); pc.show(); System.out.println("Main class declaration as public"); } }
Eine Klasse als privat deklarierenBeispiel
Live-Demomodifier protected not allowed here
Ausgabe
private class PrivateClassTest { int x = 20; void show() { System.out.println("Declare top-level class as private"); } } public class Test { public static void main(String args[]) { PrivateClassTest pc = new PrivateClassTest(); System.out.println(pc.x); pc.show(); System.out.println("Main class declaration as public"); } }
Das obige ist der detaillierte Inhalt vonKönnen wir in Java eine Klasse der obersten Ebene als geschützt oder privat deklarieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!