を介して直接アクセスできます。ただし、
staticクラス変数は静的変数とも呼ばれ、クラス内でstaticキーワードを使用して宣言されますが、メソッドコンストラクターとステートメントブロックの外側になければなりません。
として宣言される場合を除いて、ほとんど使用されません。定数は、パブリック/プライベート、final、および静的型として宣言された変数を参照します。初期化後に定数を変更することはできません。
静的変数は静的記憶領域に格納されます。変数は定数として宣言されることがよくありますが、static のみを使用して宣言されることはほとんどありません。
静的変数はプログラムの開始時に作成され、プログラムの終了時に破棄されます。 インスタンス変数と同様の可視性を持ちます。ただし、クラスのユーザーに見えるようにするために、ほとんどの静的変数はパブリック型として宣言されます。
デフォルト値はインスタンス変数と同様です。数値変数のデフォルト値は 0、ブール変数のデフォルト値は false、参照型のデフォルト値は null です。変数の値は、変数の宣言時またはコンストラクターで指定できます。さらに、静的変数は静的ステートメント ブロックで初期化することもできます。
静的変数には、
を通じてアクセスできます。
クラス変数が public static Final 型として宣言されている場合、クラス変数名には大文字を使用する必要があります。静的変数が public 型または Final 型でない場合、その命名方法はインスタンス変数およびローカル変数の命名方法と一致します。
class TiXing{ float up,height; static float down; TiXing(float x,float y,float z){ up=x; height=y; down=z; } } public class ep3_9{ public static void main(String args[]){ TiXing one=new TiXing(1,2,3); System.out.println("one's down is:"+one.down); TiXing two=new TiXing(4,5,6); System.out.println("one's down is:"+one.down); System.out.println("two's down is:"+two.down); System.out.println("TiXing's down is:"+TiXing.down); } }インスタンスメソッドとクラスメソッドは、インスタンス変数とクラス変数にアクセスします
クラスメソッドはインスタンス変数にはアクセスできません。アクセスできるのはクラス変数のみです。クラスメソッドはクラス名またはインスタンスオブジェクトによって呼び出されます。 This または
スーパーキーワードclass TiXing{
private float up,height;
private static float down;
TiXing(float x,float y,float z){
up=x;
height=y;
down=z;
}
public void display(){
System.out.println("up is:"+up+"height is:"+height+"down is:"+down);
}
public static void change(float number){
down=number;
//System.out.println("height:"+height);//出错
}
}
public class ep3_9{
public static void main(String args[]){
TiXing one=new TiXing(1,2,3);
one.display();
TiXing two=new TiXing(4,5,6);
one.display();
two.display();
//TiXing.display();//出错
one.change(101);
one.display();
two.change(102);
two.display();
}
}
はクラス メソッドには使用できません
以上がJAVAのクラスとオブジェクト(インスタンス変数とクラス変数の違い)(インスタンスメソッドとクラスメソッドの違い)の説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。