我有一个类,里面有一个方法A. 我想编写一个小程序,可以管理methodA从任何地方,任何时间调用多少次。 我不知道要做多少,因为我认为一个正常的变量可以做到这一点。我认为使用文件或数据库的实现可以做到这一点,但它不是那么好。
谁能告诉我这个建议?感谢。
答案 0 :(得分:1)
您需要在类中使用包含methodA()
的静态变量。
class someClass {
public static int counter = 0;
void methodA() {
counter++;
//other code
}
}
现在每次调用methodA时,计数器都会增加。我将其公开,以便您可以随时直接从任何课程访问它,以查看已调用methodA()
的次数。
答案 1 :(得分:0)
如果可以同时从多线程调用methodA(),那么我们可能需要一个AtomicInteger
public class SomeClass {
protected static AtomicInteger counter = new AtomicInteger(0);
public void methodA() {
counter.incrementAndGet();
}
}
This post介绍为什么“++”不是线程安全的,以及如何处理。