フィールド


📢 この文章は『Javaの定式』『これがJava』の一部を引用している.
フィールド(Field):オブジェクトの一意のデータ、オブジェクトが持つべきコンポーネント、およびオブジェクトの現在のステータスデータを格納する場所
フィールド宣言
  • フィールドは、クラス内のカッコ{}ブロックの任意の場所に存在することができることを宣言します.
  • 生成者宣言とメソッド宣言の前後どこでもフィールド宣言が可能である.
  • ジェネレータおよびメソッドでは、カッコ内は宣言できません.(コンストラクション関数とメソッドでは、カッコ内にローカル変数が宣言されます.)
  • 타입 필드 [= 초기값];
    タイプは、フィールドに格納するデータのタイプを決定します.タイプは、基本タイプと参照タイプです.フィールドの初期値は、フィールドを宣言するときに与えることも、省略することもできます.
    フィールドの使用
    フィールドの使用は、フィールド値の読み取りと変更を行う操作です.クラス内の作成者またはメソッドで使用する場合は、フィールド名の読み取りと変更だけで済みます.クラス外で使用する場合は、まずクラスからオブジェクトを作成し、フィールドを使用する必要があります.これは、フィールドがオブジェクトに属するデータであり、オブジェクトが存在しない場合、フィールドも存在しないためです.
    // Car 클래스
    
    // 필드
    int speed;
    
    // 생성자
    car() {
    	speed = 0;
    }
    
    // 메서드
    void method(...) {
    	speed = 10;
    }
    Carクラスのspeedフィールドはジェネレータとメソッドで変更できます.使用方法は変数と同じですが、変数は宣言された作成者またはメソッドブロックでのみ使用でき、フィールドは作成者およびすべてのメソッドで使用できます.外部クラスでCarクラスのspeedフィールド値を使用するには、まずCarオブジェクトを作成する必要があります.
    Car myCar = new Car();
    myCar変数がCarオブジェクトを参照する場合、ポイント(.)演算子を使用してspeedフィールドにアクセスできます.
    点(.)演算子は、オブジェクトが持つフィールドまたはメソッドを使用するオブジェクトアクセス演算子です.
    myCar.speed = 60;
    Carオブジェクトのspeedフィールド値を60に変更します.
    宣言位置による変数タイプ
    変数には、クラス変数、インスタンス変数、領域変数の3種類があります.変数の種類を決める重要な要素は「変数の宣言位置」です.メンバー変数(フィールド)を除き、残りの変数は領域変数であり、メンバー変数にはクラス変数が静的に付着し、インスタンス変数が付着していない.
    class Variables {
    	int iv;         // 인스턴스변수
        static int cv;  // 클래스변수(static변수, 공유변수) 이 둘은 멤버변수이다.
        
        void method() {
        	int lv = 0; // 지역변수
        }
    }
    1.インスタンス変数
  • クラス領域に宣言し、クラスインスタンスの作成時に作成します.したがって、インスタンス変数の値を取得または保存するには、まずインスタンスを作成する必要があります.
  • インスタンスは、異なる値を有することができる独立した記憶領域を有する.
  • インスタンスごとに固有の状態を維持する必要があるプロパティについて、インスタンス変数として宣言します.
  • 2.クラス変数
  • インスタンス変数にstaticを付けるとよい.
  • のすべてのインスタンスは、共通のストレージスペース(変数)を共有します.
  • インスタンス変数とは異なり、インスタンスを作成することなく、クラス名はいつでも使用できます.クラス変数と同じフォーマットを使用します.
  • の公衆を前にすれば、同じ番組内で随所にアクセスでき、「グローバル変数」の性質を持つ.
  • 3.地域変数
    宣言は
  • メソッド内で、メソッド内でのみ使用できます.
  • メソッドが終了すると消え、使用できなくなります.