问题是:
编写包含以下内容的类的定义 Counter
:
一个名为 counter 类型的实例变量
int
。limit
一个名为type 的实例变量int
。一个名为的静态
int
变量nCounters
,初始化为 0 。构造函数采用两个
int
参数,将第一个分配给counter
,将第二个分配给limit
。它还将静态变量加一nCounters
。一个名为 的方法
increment
。它不带参数或返回值;如果
实例变量counter
小于limit
,increment 只是将实例变量加一counter
。decrement
一个不带参数也不返回值的命名方法 ;如果
counter
大于零,它只是从 中减去 1counter
。一个名为
getValue
返回实例变量值的 方法counter
。一个名为
getNCounters
返回静态变量值的 静态方法
nCounters
。
我的困境
该代码工作正常,但我想知道以下内容:
为什么第一个静态私有而第二个是公开的?
我的代码:
public class Counter
{
private int counter;
private int limit;
private static int nCounters = 0;
public Counter (int x, int y)
{
counter = x;
limit = y;
nCounters++;
}
public void increment ()
{
if( counter < limit)
{
counter++;
}
}
public void decrement ()
{
if(counter > 0)
{
counter--;
}
}
public int getValue ()
{
return counter;
}
public static int getNCounters ()
{
return nCounters;
}
}