1
1

More than 1 year has passed since last update.

【Java•学習ログ⑤】メソッド呼び出しと引数

Posted at

教本に沿ってやってみたシリーズ、『第5章』です。

≪使用教材≫スッキリわかるJava入門 第3版 スッキリわかるシリーズ

■メソッドとは

数千〜数万行にも及ぶプログラムを複数の部品に仕分けるしくみ。この一つの単位のことをメソッドという。

メソッドは繰り返し使用することができるので、同じ処理を何度も書く必要がなくなる。

なお、メソッドを作成することを定義といい、再利用することを呼び出すという。

スクリーンショット 2023-08-10 235917.png
【実行】
スクリーンショット 2023-08-11 000821.png

mainメソッド外に作成したメソッドも呼び出し可能。起点はmainになるので、一番上に書いたメソッドが1番初めに実行される訳ではない。

■引数(ひきすう)について

呼び出し元から呼び出したメソッドに値を渡せる方法。

 hallo() //何も渡さないメソッド
 hallo('奏') //値を一つ渡すメソッド
 methodA(20,"abc") //値を複数渡すメソッド

渡す値のことを実引数、受け取る変数のことを仮引数という。

※宣言した変数は同ブロック内でしか使用できない(スコープ:ログ③参照)ことが前提にあるため、メソッド外の変数に同値を代入する際には引数を用いる。

スクリーンショット 2023-08-11 004845.png

■戻り値について

  • 戻り値
    呼び出したメソッドから元のメソッドへ返す値のこと。
    値を元のメソッドに戻すには「return文」を使う。
    スクリーンショット 2023-08-11 041543.png

また、波線の引かれた部分には戻したい値の型を指定する。

■オーバーロードについて

「オーバーロード(多重定義)」とは、同じ名前のメソッドを複数定義すること。
下記のように、仮引数の型が異なれば呼び出せる。

public static int method(int x)  //1つ目
public static double method(double x) //2つ目
public static String method(String x) //3つ目

■引数と配列

引数には変数だけでなく配列も使える!
スクリーンショット 2023-08-11 114717.png

  • 値渡し
    引数として通常の変数を指定し、変数に入っている値そのものを呼び出しメソッドに渡すこと。
int x = 100; //変数に値を代入
method(x); //引数に変数を指定してメソッド呼び出し
public static void method(int x) //100が渡される
  • 参照渡し
    引数として配列変数を指定すること。
int[] array = {10,20,30}; //配列を作成
method(array); //引数に配列変数を指定してメソッド呼び出し
public static void method(int[] array) //配列の先頭要素のアドレスが参照される

呼び出し先で変更を加えると呼び出し元にも影響する。

■コマンドライン引数

java Main 勇者 村人 魔王
public static void main(String[] args){

meinメソッドでは、「コマンドライン引数」を用いてプログラム起動時の追加情報を指定することができる。
上記のようにjava プログラム名 引数リストと記すことで、mainメソッドに値を渡した状態で起動できる。この例ではargs.lenfth(要素数)は「3」となる。

以上、雑備忘録。

1
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1