"静的メソッドに加えて、静的クラスもあります。これらについては後ほど詳しく説明します。今のところは例だけを示します。"
例:
public class StaticClassExample
{
private static int catCount = 0;
public static void main(String[] args) throws Exception
{
Cat bella = new Cat("Bella");
Cat tiger = new Cat("Tiger");
System.out.println("Cat count " + catCount);
}
public static class Cat
{
private String name;
public Cat(String name)
{
this.name = name;
StaticClassExample.catCount++;
}
}
}
" Cat オブジェクトは必要なだけ作成できます。ただし、静的変数の場合はそうではありません。静的変数のコピーは 1 つだけ存在します。"
「クラス宣言でstatic修飾子を使用する主な目的は、 CatクラスとStaticClassExampleクラスの間の関係を制御することです。考え方はおおよそ次のとおりです。Catクラスは StaticClassExample オブジェクトにリンクされておらず、インスタンスにアクセスできません (非static) StaticClassExample クラスの変数。
「クラス内にクラスを作成できるということですか?」
「はい。Java ではそれが可能ですが、今はあまり考えないでください。将来、さらにいくつかのことを説明するときに、より明確になります。」
「そうだといいですね、リシ」
GO TO FULL VERSION