Java メソッドの定義

public static 戻り値のデータ型 メソッド名(引数) {

  return 戻り値 ;

}

 

基本的な形は上記の通り。

ただややこしいのが、オーバーロードといっての型や個数が違う場合は同名のメソッドを定義できること。

実際に現場で同名のメソッドを定義することはないのかもしれないけれど、Progateで学習したらややこしくて頭が混乱した。

 

そしてメソッドが更にメソッドを呼ぶパターン。

 

 

Main.java

1
//実行部のMainメソッド
class Main {
 public static void main(String[] args) {
  printData(fullName("Tarou", "Nihon"), 27);
 }
//printDataメソッド
 public static void printData(String name, int age) {
  System.out.println("私の名前は" + name + "です");
  System.out.println("年齢は" + age + "歳です");
  }
 }
//fullName メソッド
 public static String fullName(String firstName, String lastName) {
  return firstName + " " + lastName;
 }
}

 

じっくり考えればわかるのだけれど、更に量が増えて複雑化すると???となってしまう。

 

これをMainメソッドの実行部とロジック部分を切り離すと少しだけわかりやすくなる。

Main.java

1
class Main {
 public static void main(String[] args) {
  Person.printData(Person.fullName("Tarou", "Nihon"), 27);
 }

 

Person.java

1
//新しいPersonクラス
class Person

//printDataメソッド
 public static void printData(String name, int age) {
  System.out.println("私の名前は" + name + "です");
  System.out.println("年齢は" + age + "歳です");
  }
 }
//fullName メソッド
 public static String fullName(String firstName, String lastName) {
  return firstName + " " + lastName;
 }

}

 

 

記述量が多い言語とのことなので一つ一つ確実にやっていきたい。