Java で別のクラスのメソッドを呼び出す方法
- Java で別のクラスでメソッドを呼び出す
-
Java の別のクラスから
static
メソッドを呼び出す -
Java の別のクラスから
protected
メソッドを呼び出す -
Java で別のクラスの
public
メソッドを呼び出す
このチュートリアルでは、Java で他のクラスのメソッドを呼び出す方法を紹介するとともに、トピックを理解するためのコード例をいくつか挙げています。
Java では、クラスは多くのメソッドを持つことができ、アプリケーションを作成している間に、これらのメソッドを同じクラスや別のクラスに呼び出すことができます。メソッドを別のクラスで呼び出すことができるシナリオはいくつかあります。そこで、まずは例を挙げてみましょう。
Java で別のクラスでメソッドを呼び出す
他のクラスのメソッドをクラス化するには、そのクラスのオブジェクトが必要です。ここでは、クラス Student
が getName()
というメソッドを持っています。このメソッドには Student
クラスのオブジェクトを使って、2 番目のクラス SimpleTesting
からアクセスします。以下の例を参照してください。
class Student {
String name;
Student(String name) {
this.name = name;
}
public String getName() {
return this.name;
}
}
public class SimpleTesting {
public static void main(String[] args) {
Student student = new Student("John");
String name = student.getName();
System.out.println("Student name is : " + name);
}
}
以下の例を参照してください。
Student name is : John
Java の別のクラスから static
メソッドを呼び出す
それは、別のクラスの静的メソッドを呼び出す場合の別のシナリオです。静的メソッドの場合、メソッドを呼び出すためにオブジェクトを作成する必要はありません。この例で getName()
静的メソッドを呼び出すために行ったように、クラス名を使って static
メソッドを呼び出すことができます。以下の例を参照してください。
class Student {
static String name;
static String getName() {
return name;
}
}
public class SimpleTesting {
public static void main(String[] args) {
Student.name = "John";
String name = Student.getName();
System.out.println("Student name is : " + name);
}
}
出力:
Student name is : John
Java の別のクラスから protected
メソッドを呼び出す
クラスのインスタンスメソッドが protected
と宣言されている場合、サブクラス内でのみ呼び出すことができます。ここでは、Student
クラスを SimpleTesting
クラスに拡張し、SimpleTesting
クラスのオブジェクトを使って getName()
メソッドを呼び出す。以下の例を参照してください。
class Student {
protected String name;
protected String getName() {
return this.name;
}
}
public class SimpleTesting extends Student {
public static void main(String[] args) {
SimpleTesting st = new SimpleTesting();
st.name = "John";
String name = st.getName();
System.out.println("Student name is : " + name);
}
}
出力:
Student name is : John
private
メソッドを別のクラスに呼び出すことはできません。Java で別のクラスの public
メソッドを呼び出す
public
として宣言されたメソッドは外部からのアクセスが可能であり、他のクラスに呼び出すことができます。ここでは、Student
クラスのオブジェクトを用いて Student
クラスのパブリックメソッド getName()
を別のクラスに呼び出しています。以下の例を参照してください。
class Student {
public String name;
public String getName() {
return this.name;
}
}
public class SimpleTesting {
public static void main(String[] args) {
Student st = new Student();
st.name = "John";
String name = st.getName();
System.out.println("Student name is : " + name);
}
}
出力:
Student name is : John