您好,欢迎访问一九零五行业门户网

在Java中,我们可以将顶级类声明为protected或private吗?

不,我们不能将顶级类声明为私有或受保护。它可以是公共或默认(无修饰符)。如果没有修饰符,则应该具有默认访问权限。
语法// a top level class public class toplevelclasstest { // class body}
如果将一个顶级类声明为私有(private),编译器将会报错,提示“在此处不允许使用修饰符private”。这意味着顶级类不能是私有的,同样也适用于protected访问修饰符。protected意味着该成员可以被同一个包中的任何类以及子类访问,即使它们位于另一个包中。顶级类只能有public、abstract和final修饰符,也可以不定义任何类修饰符。这被称为默认/包访问权限。我们可以将内部类声明为私有或受保护,但不允许在外部类中这样做classes.一个java源文件中可以定义多个顶级类,但最多只能有一个 public顶级类声明。文件名必须与公共类的名称匹配。
将类声明为protected示例实时演示
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"); }}
在上面的示例中,我们可以将类声明为protected,它会抛出一个错误,提示修饰符protected不允许在此处使用。因此,上面的代码不会执行。
输出modifier protected not allowed here
将类声明为私有示例实时演示
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"); }}
在上面的例子中,我们可以将类声明为private,它会抛出一个错误,表示此处不允许修饰符 private。所以上面的代码不会执行。
输出modifier private not allowed here
以上就是在java中,我们可以将顶级类声明为protected或private吗?的详细内容。
其它类似信息

推荐信息