为什么我们不能有静态外部类
为什么我们不能创建外部的静态类。 我在这个社区读到了问题的答案,但我还没有得到完美答案。 有些人可以帮我一个确切的答案
static class A { void display() { System.out.println("This is a static class"); } }
外部类已经是有效的static
static
嵌套类意味着它没有引用外部类。 外部类已经没有对另一个类的隐式引用。
静态类究竟会做什么? 它是“所有实例中的完全相同的实现”吗? 想想看:)
因为这毫无意义,毫无用处。 如果你想拥有静态对象,只需创建类的静态实例。 如果你想在不引用它的对象的情况下调用类方法,只需将此方法设为静态即可。 然后你会有:
class A { public static void display() { System.out.println("This is a static method"); } }
您可以通过A.display();
调用此方法A.display();
。
静态嵌套类只是工作中的命名空间。 嵌套类在封闭类中是名称范围的,您可以将外部类视为已存在于该包的根命名空间中。
因此,不需要static
关键字,因为类在包中已经是全局的,并且如果是公共的 ,则通过应用程序。
Java中没有外部静态类。 因为所有外部类都已经可见,就像静态修饰符一样。
但是你的意思是,你不想要一个类的实例,你可以简单地让类中的所有方法和变量都是静态的。