在Java中,当一个类充满了静态成员函数和变量时会发生什么?

在Java中,当一个类充满了静态成员函数和变量时会发生什么?,java,Java,如果我定义了一个充满静态成员函数和变量(java)的类,那么可能会发生一些有趣的事情 我可以将该类用作该类的单个实例,而不必担心传递实例变量吗 如果我不实例化一个对象,构造函数将如何生效?因此,我无法在构造函数中初始化静态成员变量,对吗?它与任何其他具有静态成员的类一样工作,无论它们是全部静态的还是只是其中的一部分。它们按预期使用-绑定到类,而不是实例 此外,您还可以使用构造函数创建“静态类”,查找单例模式(但是请注意,该模式很容易被误用)。如果我定义了一个充满静态成员函数和变量(java)的类

如果我定义了一个充满静态成员函数和变量(java)的类,那么可能会发生一些有趣的事情

我可以将该类用作该类的单个实例,而不必担心传递实例变量吗


如果我不实例化一个对象,构造函数将如何生效?因此,我无法在构造函数中初始化静态成员变量,对吗?

它与任何其他具有静态成员的类一样工作,无论它们是全部静态的还是只是其中的一部分。它们按预期使用-绑定到类,而不是实例


此外,您还可以使用构造函数创建“静态类”,查找单例模式(但是请注意,该模式很容易被误用)。

如果我定义了一个充满静态成员函数和变量(java)的类,那么可能会发生一些有趣的事情。

不太可能,通常帮助程序/实用程序类没有实例级字段。它们只有静态方法和静态字段

我是否可以将该类用作该类的单个实例,而不必担心传递实例变量

不,将所有方法和字段标记为
static
不会使其成为单例类

如果我不实例化对象,构造函数将如何生效

执行
newmyclass()
时,将调用默认构造函数

所以我不能在构造函数中初始化静态成员变量,对吗?


你可以。除非标记为
final
。如果您有静态块,您可能会遇到麻烦

为什么不自己尝试一下,然后带着您感兴趣的结果回来呢?您可能需要研究一下“单例”设计模式。初始化静态变量可以在声明静态变量时进行,也可以在“静态块”中进行,这可能是Google的另一件事。为什么不编写一些代码,看看它是否达到了预期效果?如果没有,请回答一个明确、具体的问题。