Java 17 Silver ・ 4. クラスの定義とインスタンスの使用
メソッドとコンストラクタの作成 の練習問題と解説
Java 17 Silver ラボ の「4. クラスの定義とインスタンスの使用 › メソッドとコンストラクタの作成」の問題 9 問を載せています。問題を開くと、正解と選択肢ごとの解説が読めます。
メソッドとコンストラクタの作成 について
メソッドとコンストラクタを定義するときの決まりの分類です。デフォルトコンストラクタができる条件、this() による呼び出し、引数の値渡しが題材です。
コンストラクタを 1 つでも書くと、引数なしのデフォルトコンストラクタは作られなくなります。this(...) で同じクラスの別のコンストラクタを呼べますが、コンストラクタの最初の文でなければいけません。戻り値の型を書いたものはクラスと同じ名前でもコンストラクタではなく、普通のメソッドになります。
引数は値渡しで、基本データ型は値のコピー、参照型は参照のコピーが渡されます。メソッドの中で引数に別のオブジェクトを代入しても呼び出し元は変わりませんが、参照先の中身を変えると呼び出し元にも見えます。引数とフィールドが同じ名前のとき、this. を付け忘れると引数に自分を代入するだけになり、フィールドは変わりません。
問題 (9 問)
- デフォルトコンストラクタが無くなる
- this() で別のコンストラクタを呼ぶ
- this() を2行目に書く
- this を付け忘れたコンストラクタ
- 戻り値の型を書いた「コンストラクタ」
- return が足りないメソッド
- 引数は値渡し
- 可変長引数
- this を返すメソッドチェーン
広告