logo

Javaのインスタンス変数

どのプログラミング言語でも、プログラムには、プログラム全体で使用できるさまざまな値を格納するための識別子が必要です。これらの識別子は変数です。

Javaの変数

  • 変数は、システム メモリ内に格納される値に割り当てられる名前です。値はプログラムの実行中に更新できます。
  • Java プログラミングでは、プログラムで使用する変数を最初に宣言する必要があります。
  • 変数は、データ型とその後に続く識別子名を使用して宣言されます。変数は宣言時に初期化することも、プログラムの実行中にユーザーから取得した値を割り当てることもできます。
  • Java には基本的に 3 種類の変数があります。
    1. Javaローカル変数
    2. Javaインスタンス変数
    3. Java静的変数 / Javaクラス変数

Javaインスタンス変数

  • クラス内でメソッドのスコープ外に宣言される変数は、Java ではインスタンス変数と呼ばれます。
  • インスタンス変数は、クラスのロード時、またはクラスのオブジェクトの作成時に初期化されます。
  • インスタンス変数は、Java で使用可能なさまざまなアクセス修飾子 (default、private、public、protected など) を使用して宣言できます。
  • さまざまな型のインスタンス変数には、次のポイントで指定されるデフォルト値があります。
Javaのインスタンス変数

特徴

  1. インスタンス変数を使用するには、クラスのオブジェクトを作成する必要があります。
  2. インスタンス変数は、それに関連付けられているオブジェクトが破棄されると破棄されます。
  3. インスタンス変数は強制的に初期化する必要はありません。
  4. インスタンス変数は、それを宣言する同じクラス内でアクセスできます。

インスタンス変数の制限事項

  1. static、abstract、striftp、synchronized、およびnativeとして宣言することはできません。
  2. それは最終的および一時的であると宣言できます。
  3. Java で使用できる 4 つのアクセス修飾子 (プライベート、パブリック、プロテクト、およびデフォルト) のいずれかを指定できます。

Java のインスタンス変数のデフォルト値

Java のインスタンス変数は、次のようにさまざまなデータ型です。

CのASCIIテーブル
インスタンス変数の型 デフォルト値
ブール値 間違い
バイト (バイト) 0
短い (短い) 0
整数 0
ダブル 0.0d
浮く 0.0
長さ 0L
物体 ヌル
文字 u0000

Javaプログラムでインスタンス変数を使ってみましょう。

Java プログラムでのインスタンス変数の使用

次の Java プログラムでは、クラス 学生の記録 が宣言され、異なるアクセス修飾子を使用してインスタンス変数が作成されます。

学生の記録.java

 public class Studentsrecords { /* declaration of instance variables. */ public String name; //public instance String division; //default instance private int age; //private instance /* Constructor that initialize an instance variable. */ public Studentsrecords(String sname) { name = sname; } /* Method to intialize an instance variable. */ public void setDiv(String sdiv) { division = sdiv; } /* Method to intialize an instance variable. */ public void setAge(int sage) { age = sage; } /* Method to display the values of instance variables. */ public void printstud() { System.out.println('Student Name: ' + name ); System.out.println('Student Division: ' + division); System.out.println('Student Age: ' + age); } /* Driver Code */ public static void main(String args[]) { Studentsrecords s = new Studentsrecords('Monica'); s.setAge(14); s.setDiv('B'); s.printstud(); } } 

出力:

サイラ・バヌ俳優
 Student Name: Monica Student Division: B Student Age: 14 

上記の Java プログラムは、クラスのオブジェクトを宣言することでインスタンス変数を初期化します。 学生の記録 。インスタンス変数の値 名前、部門、 そして を使用して表示されます 印刷された() 方法。

Javaのローカル変数、インスタンス変数、静的変数の違い

Javaのインスタンス変数
Noさん。 ローカル変数 インスタンス変数 静的変数
1. メソッド内で宣言された変数はローカル変数です。 インスタンス変数はクラスの内部で、メソッドまたはブロックの外部で宣言されます。 静的変数はクラス内で宣言されますが、キーワード static で始まるメソッドの外で宣言されます。
2. ローカル変数のスコープは、内部で宣言されているメソッドに制限されます。 インスタンス変数はクラス全体からアクセスできます。 静的変数はクラス全体でアクセスできます。
3. ローカル変数は、メソッドが呼び出されたときにその有効期間を開始します。 インスタンス変数に関連付けられたオブジェクトによって、その存続期間が決まります。 静的変数の有効期間はプログラムと同じです。
4. ローカル変数は、クラスのすべてのオブジェクトにアクセスできます。 インスタンス変数には、オブジェクトごとに異なるコピーがあります。 静的変数には、クラス全体のコピーが 1 つだけあります。
5. 特定のメソッドに必要な値を保存するために使用されます。 クラスのさまざまなメソッドからアクセスする必要がある値を格納するために使用されます。 定数を格納するために使用されます。