MENU

【Java Silver】メソッドとコンストラクタの理解と使い方

今回はメソッドやコンストラクタについて学びましょう。

目次

問題

以下のプログラムを実行した場合の出力を選んでください。

class Calculator {
                private int total;

                Calculator(int initial) {
                    total = initial;
                }

                void add(int value) {
                    total += value;
                }

                int getTotal() {
                    return total;
                }
            }

            public class Main {
                public static void main(String[] args) {
                    Calculator calc = new Calculator(10);
                    calc.add(5);
                    calc.add(10);
                    System.out.println(calc.getTotal());
                }
            }

選択肢

  • A. 10
  • B. 15
  • C. 25
  • D. 30

答えと解説

回答を見る

答え

C. 25

解説

基本説明:

このプログラムでは、Calculatorクラスを使って簡単な加算操作を行います。ここでは、initial引数を受け取るコンストラクタを用いてCalculatorオブジェクトを初期化しています。addメソッドは引数で受け取った値をtotalに加算し、getTotalメソッドは現在のtotalを返します。

誤答理由:

AやBを選ぶ誤りは、加算操作の回数やtotalの初期値の考慮漏れによります。10(初期値)に5(1回目の加算)と10(2回目の加算)を足し合わせる必要があります。したがって、結果は15ではなく25になります。

つまずきポイント:

Calculatorクラス内のtotalの役割やメソッドがどのように動作するのかを理解することがポイントです。変数の変化を手順ごとに追跡することが慣れないうちは難しいかもしれません。

発展知識:

コンストラクタは、オブジェクトの初期化を行う特別なメソッドです。引数を取ることで、多様な初期化方法を提示できます。また、メソッドの操作は、それらの引数と戻り値に依存しています。Javaでのオブジェクト指向プログラミングにおいては、コンストラクタやメソッドの適切な活用が非常に重要です。

目次