101 「配列修羅道」 Step05 解答例

Product.java

public class Product {
    // 商品名
    private String name;

    // 在庫数
    private int stock;

    // コンストラクタ(初期化)
    public Product(String name, int stock) {
        this.name = name;
        this.stock = stock;
    }

    // 商品名を取得するメソッド
    public String getName() {
        return name;
    }

    // 在庫数を取得するメソッド
    public int getStock() {
        return stock;
    }
}

Main.java

public class Main {
    public static void main(String[] args) {
        Product p1 = new Product("りんご", 10);
        Product p2 = new Product("みかん", 5);

        System.out.println(p1.getName() + " (在庫: " + p1.getStock() + ")");
        // 出力: りんご (在庫: 10)

        System.out.println(p2.getName() + " (在庫: " + p2.getStock() + ")");
        // 出力: みかん (在庫: 5)
    }
}

解説

● クラス定義とは?

  • Product は「商品」を表す設計図
  • 設計図には「何を持つか(フィールド)」と「どう振る舞うか(メソッド)」を定義する

● フィールドとコンストラクタ

  • private String name; はデータの隠蔽(カプセル化
  • this.name = name; は「引数のnameをフィールドに代入する」というJavaの基本形

● メソッドの役割

  • getName()getStock() は、フィールドの値を「外から読めるようにする」ための方法
  • これが 「オブジェクトから値を取り出す」 型の最初のステップ

101 ステップアップ問題 「配列修羅道」


👉 Just Keep Typing, Baby!では、この「配列修羅道」でつまづいた人向けの解説をしています。こちらもぜひ!