LoginSignup
0
0

More than 1 year has passed since last update.

Javaのメソッドについて_変数のスコープ

Last updated at Posted at 2023-03-14

paizaラーニングforTEAM Java入門編
レッスン6の#04

6-#04
// スコープを理解する
// Javaでは、あるメソッド定義と別のメソッド定義は完全に独立したコードとして扱われるということ
// これが変数のスコープ_変数の有効範囲が決まっている
// メソッド定義など、ブロックの中で宣言された変数をローカル変数と呼ぶ

public class Main {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        int num = sum(a, b); // sumメソッドの呼び出し_引数がaとb_戻り値をnumに代入
        System.out.println(num);
        System.out.println("hello" + a);
    }
    
    // 足し算をするsumメソッドを定義
    public static int sum(int x, int y) {
        // メソッドの結果を再利用したい場合に戻り値を記述する
        // メソッド定義では戻り値のデータ型を記述(ここではint)、戻り値がない場合はvoid
        // メソッド定義の引数にはデータ型と変数名を記述
        int a = 3;
        System.out.println("hello" + a); // mainメソッドとはスコープが分かれているため、
        // mainメソッドの変数aとsumメソッドの変数aは独立している
        return x + y; // メソッドの中身_ここではメソッドの返り値
    }
    
    
}

// プログラムの流れ
// 1. mainメソッドの変数aと変数bに値を代入
// 2. sumメソッドを呼び出す
// 3. sumメソッドの変数aに値を代入(メソッドではスコープが分離しているのでmainメソッドの変数aには影響しない)
// 4. sumメソッド内で"hello" + aを出力_変数aはsumメソッドのもの
// 5. sumメソッドでの計算結果を戻り値として返す
// 6. mainメソッドに戻り、戻り値を変数numに代入
// 7. mainメソッド内で変数numの値を出力
// 8. mainメソッド内で"hello" + aを出力_変数aはmainメソッドのもの
0
0
0

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
0
0