Java 速習チュートリアル

Java クラスメソッド

1. Javaクラスメソッド

「Javaメソッド」の章で学んだように、メソッドはクラス内で宣言され、特定のアクションを実行するために使用されます。

以下は、Main クラス内に myMethod() という名前のメソッドを作成する例です:

public class Main {
  static void myMethod() {
    System.out.println("Hello World!");
  }
}

myMethod() は呼び出された際に、テキストを出力するという「アクション」を実行します。メソッドを呼び出すには、メソッド名の後に2つの括弧 () とセミコロン ; を記述します。

例:main メソッドの中で myMethod() を呼び出します。

public class Main {
  static void myMethod() {
    System.out.println("Hello World!");
  }

  public static void main(String[] args) {
    myMethod();
  }
}
// 出力: "Hello World!"

2. オブジェクトを介したメソッドへのアクセス

例:myCar という名前の Car オブジェクトを作成します。myCar オブジェクトに対して fullThrottle() メソッドと speed() メソッドを呼び出し、プログラムを実行します。

// Mainクラスの作成
public class Main {
 
  // fullThrottle() メソッドの作成
  public void fullThrottle() {
    System.out.println("車は全開で走っています!");
  }

  // speed() メソッドの作成(パラメータを追加)
  public void speed(int maxSpeed) {
    System.out.println("最高速度は: " + maxSpeed);
  }

  // mainメソッド内で、myCarオブジェクトに対してメソッドを呼び出す
  public static void main(String[] args) {
    Main myCar = new Main();   // myCarオブジェクトを作成
    myCar.fullThrottle();      // fullThrottle() メソッドを呼び出し
    myCar.speed(200);          // speed() メソッドを呼び出し
  }
}
// 出力: 車は全開で走っています!
// 出力: 最高速度は: 200

2.1 例の解説

  1. class キーワードを使用して、カスタムクラス Main を作成しました。
  2. Main クラス内に fullThrottle()speed() メソッドを作成しました。
  3. fullThrottle() メソッドと speed() メソッドは、呼び出された際にテキストを出力します。
  4. speed() メソッドは maxSpeed という名前の intパラメータ(引数)を受け取ります。これは手順8で使用します。
  5. Main クラスとそのメソッドを使用するために、Main クラスのオブジェクトを作成する必要があります。
  6. 次に main() メソッドへ移動します。これはプログラムを実行するためのJavaのビルトイン(組み込み)メソッドです(main 内のコードが実行されます)。
  7. new キーワードを使用して、myCar という名前のオブジェクトを作成しました。
  8. そして、myCar オブジェクトに対して fullThrottle()speed() メソッドを呼び出します。呼び出しにはオブジェクト名(myCar)、ドット(.)、メソッド名(fullThrottle(); および speed(200);)の順で記述します。speed() メソッドの内部に 200 という int 型の引数を渡している点に注目してください。

3. 覚えておくべきポイント

  • ドット(.は、オブジェクトの属性(フィールド)やメソッドにアクセスするために使用されます。
  • Javaでメソッドを呼び出すには、メソッド名の後に一対の括弧 () を書き、その後にセミコロン ; を記述します。
  • クラス名とファイル名は一致している必要があります(Main クラスなら Main.java)。

4. 複数クラスの利用

「クラス」の章で触れたように、あるクラスのオブジェクトを作成し、それを別のクラスからアクセスするのが良いプラクティスとされています。

Javaのファイル名がクラス名と一致している必要があることを忘れないでください。この例では、同じディレクトリ内に2つのファイルを作成します:

  • Main.java
  • Second.java

Main.java

public class Main {
  public void fullThrottle() {
    System.out.println("車は全開で走っています!");
  }

  public void speed(int maxSpeed) {
    System.out.println("最高速度は: " + maxSpeed);
  }
}

Second.java

class Second {
  public static void main(String[] args) {
    Main myObj = new Main();
    myObj.fullThrottle();
    myObj.speed(200);
  }
}

両方のファイルをコンパイルします:

C:\Users\Your Name>javac Main.java
C:\Users\Your Name>javac Second.java

Second.java ファイルを実行します:

C:\Users\Your Name>java Second

出力結果は以下の通りです:

車は全開で走っています!
最高速度は: 200