gpt4 book ai didi

java - 为什么不能将 Java 类声明为静态?

转载 作者:IT老高 更新时间:2023-10-28 20:24:51 26 4
gpt4 key购买 nike

我试图找出为什么不能将类创建为静态的?喜欢:

public static class Qwert{

public static void main(String args[]){

int x = 12;
while(x<12){
x--;
}
System.out.println(" the X value is : "+ x);
}
}

最佳答案

在 Java 中,static 关键字通常将方法或字段标记为不是每个类的实例存在一次,而是永远存在一次。一个类无论如何都存在一次,因此实际上,所有类都是“静态”的,所有对象都是类的实例。

static 确实对 inner 类有意义,这是完全不同的:通常内部类实例可以访问与其绑定(bind)的外部类实例的成员,但是如果内部类是static,它就没有这样的引用,并且可以在没有外部类的实例的情况下进行实例化。也许您在某个地方看到了它,然后尝试在没有意义的顶级类上使用它。

或者您可能在其他语言中看到它,例如 C#,其语法与 Java 非常相似。

(有一次我不明白为什么外部类实例没有被垃圾收集——这是因为我在别处保留了对其内部类实例之一的引用,而内部类不是 static 所以有一个对外部类实例的引用。所以默认情况下,我现在创建内部类 static。)

关于java - 为什么不能将 Java 类声明为静态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2376938/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com