本日学習したこと
- メソッドとは
- 戻り値
- 引数
- オーバーロード
メソッドとは
・複数のプログラムをまとめ、それを一つの処理(機能)として名前をつけたもの。
メソッドを使用するメリット
・機能単位に記述するため、修正範囲を限定できる。
・開発現場では数千〜数万行に及ぶソースコードが必要になるため、メソッドを使用してなるべくシンプルに記述することができる。(プログラムの見通しが良くなり把握しやすくなる)
メソッドの定義
java
public static 戻り値の型 メソッド名(引数){
メソッドが呼び出された後に実行される具体的な処理
}#戻り値の型はメソッド内の処理の結果の値のデータ型を記述。処理結果が数値であればint、文字列であればStringになる。
# 例えば
public static int score(引数){
処理...
}
#scoreというメソッドがあり点数という結果を呼び出し元に返す時、処理結果(点数)は数値なのでintになる。
#メソッドの呼び出し
メソッド名(引数); #戻り値を利用できない。
#戻り値の受け取り
変数の型 変数名 = メソッド名(引数); #戻り値を変数に入れて利用できる。
#メソッドは定義しただけでは実行されない。呼び出して初めてメソッドの処理が実行される。
- 戻り値とは
呼び出されたメソッドから、呼び出し元のメソッドへ返す値(データ)のことを戻り値または返り値という。
java
return 戻り値; #こうすることで呼び出し元のメソッドに値を返すことができる。
#この戻り値がそのメソッドの実行結果となる。
引数
メソッドを呼び出す際に呼び出し元から値を渡すことができる。
java
public static void main(String[] arg) {
hello("岡村"); #helloメソッドを呼び出している。岡村という文字列のデータ(実引数)をhelloメソッドに渡している。
hello("山本"); #上記に同じ
hello("佐々木"); #上記に同じ
}
public static void hello(String name) { #メソッド呼び出しの際、仮引数として岡村がString型の変数nameに代入される。
System.out.println(name + "さん、こんにちは"); #変数nameに代入されているデータをここで出力する。
}
# 実行結果は
>岡村さん、こんにちは
山本さん、こんにちは
佐々木さん、こんにちは
#となる。
#引数は複数渡すことができる。その場合は、カンマ(,)で引数を区切る。
.....mainメソッド(...){ #めちゃくちゃ簡略化してます。めんどくさがってごめんなさい。
add(10, 20); #addメソッドに10,20という数値を引数として渡す。
}
.....addメソッド(int a, int b){ #addメソッドは引数を受け取り、aに10,bに20が代入される。
引数を利用した処理...
}
#ここで注意なのが引数として記述された1番目の数値10はaに代入されるというところだ。
#()内の配置によってどの変数に代入されるかが決まる。
オーバーロードとは
・同じ名前のメソッドを定義すること。多重定義ともいう。
・メソッド名が同じでもデータの型や引数の数が違えばオーバーロードできる。