Javaでのstaticの使い方

1448 ワード

Javaでstaticを使用する場合は2つあります.
1.複数のobjectを作成する場合、ある(いくつかの)filed(s)の値はグローバルである(ある/いくつかのobjectに適応するだけではない).これにより、このfiledにストレージ領域を開くだけで、新しいobjectを作成するたびに新しいストレージ領域を開く必要はありません.
2.インスタンス化せずにメソッドを呼び出す場合はstaticタグを使用します.
次のように定義されています.
1.インスタンス化する必要がなく、classの名前.field(または.method)でデータを直接操作できます.
2.インスタンス化後、objectの名前.field(または.method)で効果は同じです.
public class HelloWorld {
    
    //  static  ,      object  i       
    public static int i = 3;
    
    //       object,   non-static j        
    public int j = 3;
    
    //            。
    public static void addOne()
    {
        //i   static,          。
        HelloWorld.i++;
    } 
    
    //non-static             。
    public void addTwo()
    {
        HelloWorld.i++;
    }
    
    public static void main(String[] args) {
        
        //     ,    static  ,    i  。    
        HelloWorld.addOne();
        System.out.println(HelloWorld.i);
        //non-static           。
        HelloWorld hw = new HelloWorld();
        hw.addTwo();
        System.out.println(HelloWorld.i);
        //       object hw1,        ,i  5。
        HelloWorld hw1 = new HelloWorld();
        System.out.println(hw1.i);
        //hw j   1,j  4, hw1  3,    non-static j      。
        hw.j++;
        System.out.println("hw.j = " + hw.j);
        System.out.println("hw1.j = " + hw1.j);
    }
}

出力:
4
5
5
hw.j = 4
hw1.j = 3