Java の別のクラスから変数にアクセスする
Mohammad Irfan
2023年10月12日
このチュートリアルでは、Java の別のクラスから変数を呼び出す方法を紹介します。このプロジェクトを実行するために従うことができるいくつかのサンプルプログラムが含まれています。
Java で静的変数にアクセスする
変数は、プログラムの実行中に任意のタイプの値を保持するために使用される名前として定義されます。Java では、変数は静的、ローカル、またはインスタンスにすることができます。変数が静的である場合、クラス名を使用してその変数にアクセスできます。変数がインスタンスの場合、変数にアクセスするにはクラスオブジェクトを使用する必要があります。私たちが持っている例を通してさらに理解しましょう。
以下のプログラムでは、クラス名を使用して、SimpleTesting
の Test
クラスの静的変数にアクセスしています。ほら、クラスのオブジェクトを作成しませんでした。これが、Java ソースコードのどこからでも静的変数にアクセスできる方法です。
public class SimpleTesting {
public static void main(String[] args) {
Test t = new Test();
t.add(10, 20);
int result = Test.sum; // accessing variable
System.out.println("sum = " + result);
}
}
class Test {
static int sum;
void add(int a, int b) {
sum = a + b;
}
}
出力:
sum = 30
Java でインスタンス変数にアクセスする
ここでは、別のクラスからインスタンス変数にアクセスしています。Test
クラスのオブジェクトを使用して、そのインスタンス変数にアクセスしました。クラスオブジェクトを使用してのみ、インスタンス変数にアクセスできます。以下のサンプルプログラムを確認してください。
public class SimpleTesting {
public static void main(String[] args) {
Test t = new Test();
t.add(10, 20);
int result = t.sum; // accessing variable
System.out.println("sum = " + result);
}
}
class Test {
int sum;
void add(int a, int b) {
sum = a + b;
}
}
出力:
sum = 30
Java のサブクラスの変数にアクセスする
クラスが別のクラスを継承するとします。親クラスの変数は、サブクラス内で暗黙的にアクセス可能になります。サブクラスオブジェクトを使用してすべての変数にアクセスでき、親クラスのオブジェクトを作成する必要はありません。このシナリオは、クラスが拡張された場合にのみ発生します。それ以外の場合、それにアクセスする唯一の方法は、サブクラスを使用することです。
これがサンプルコードです。
public class SimpleTesting extends Test {
public static void main(String[] args) {
SimpleTesting st = new SimpleTesting();
st.add(10, 20);
System.out.println("sum = " + st.sum);
}
}
class Test {
int sum;
void add(int a, int b) {
sum = a + b;
}
}
出力:
sum = 30