練習問題
4.5 練習問題
本章で習った内容を元に練習問題を解いてください。
問1 次の設問①~⑤について○か×で答えなさい。
設問
① クラス内に定義できるものにはフィールド、メソッドの他にコンストラクタがある。
② コンストラクタの名前は自由につけることができ、戻り値も設定できる。
③ コンストラクタにはアクセス修飾子をつけることができない。
④ デフォルトコンストラクタの呼び出し方は、引数なしのコンストラクタと同じである。
⑤ デフォルトコンストラクタは、コンストラクタを定義していても使用することができる。
問2 以下に示すBooksクラスのコンストラクタ定義の誤りを3つ答えなさい。
ソースコード
① ソース・フォルダー: myproj_basic/src
② パッケージ: jp.co.f1.basic.ch04exercise
③ 名前: Books
1 | package jp.co.f1.basic.ch04exercise; |
8 | public void Book(String title, int price) { |
11 | System.out.println( "この本のタイトルを" + title + "、金額を" + price + "にしました。" ); |
問3 以下のフィールドを持つクラス「Score1.java」の、初期化を行う引数なしのコンストラクタを定義しなさい。Stringはnull、int(配列も同様)は0、doubleは0.0を初期値とする。
ソースコード
① ソース・フォルダー: myproj_basic/src
② パッケージ: jp.co.f1.basic.ch04exercise
③ 名前: Score1
1 | package jp.co.f1.basic.ch04exercise; |
5 | int [] score = new int [ 5 ]; |
問4 問3で示したフィールドのみのクラス「Score1.java」に、引数ありのコンストラクタを定義した「Score2.java」を作成しなさい。
コンストラクタ仕様
ソースコード
① ソース・フォルダー: myproj_basic/src
② パッケージ: jp.co.f1.basic.ch04exercise
③ 名前: Score2
1 | package jp.co.f1.basic.ch04exercise; |
5 | int [] score = new int [ 5 ]; |
9 | public Score2(String name, int [] score, int total, double ave) { |
NEXT>> 4.6 練習問題 解答