[英]Equivalent of C# “static variable” in Java
在 C# 中,我可以在 class 中声明 static var。 例如:计算 class "foo" 的创建实例。 像这样
class foo
{
static int countFoo =0;
public foo()
{
countFoo++;
}
}
现在 - 对于创建的每个 foo,我可以使用getFooCount
方法来了解创建了多少个实例。 你如何在 Java 中做到这一点? 我试图做同样的事情,但它不起作用。 请解释原因和方法。 谢谢!
不,你可以做同样的事情,它会起作用。 示例代码:
class Foo
{
private static int count;
Foo()
{
count++;
}
static void printCount()
{
System.out.println(count);
}
}
public class Test
{
public static void main(String[] args)
{
Foo.printCount(); // 0
Foo foo1 = new Foo();
Foo foo2 = new Foo();
Foo.printCount(); // 2
}
}
(如果你展示了你尝试过的东西会有所帮助......)
以下适用于 Java(尽管它不是线程安全的)
class Foo {
static int countFoo =0;
public Foo() {
countFoo++;
}
}
你到底有什么问题?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.