質問は:
Counter
以下を含むクラスの定義を記述します 。
タイプ の counter という名前のインスタンス変数
int
。limit
type という名前のインスタンス変数int
。0 に初期化されるという名前の静的
int
変数 。nCounters
最初のパラメーターをに、2 番目
int
のパラメーターを に割り当てる 2 つのパラメーターを取るコンストラクター。また、静的変数に 1 を追加します 。counter
limit
nCounters
という名前のメソッド
increment
。パラメータを取らず、値を返しません。
インスタンス変数counter
が より小さい場合 、limit
increment は単にインスタンス変数に 1 を追加しますcounter
。decrement
パラメータをとらず、値を返さないという名前のメソッド 。
counter
がゼロより大きい場合、 から 1 を引くだけ ですcounter
。getValue
インスタンス変数の値を返す という名前のメソッドcounter
。getNCounters
静的変数 の値を返す という名前の静的メソッド
nCounters
。
私のジレンマ
コードは正常に動作しますが、次のことを知りたいです。
最初の静的プライベートと 2 番目のパブリックはなぜですか?
私のコード:
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;
}
}