「Java総復習」 第3回
オブジェクトの生成、クラスの継承
Javaでのオブジェクトの生成とクラスの継承について総復習します。
制御構造やアルゴリズムについても練習します。
準備(学内向け):
各自のJavaの課題の作業用のディレクトリ java2 に移動しなさいなさい。
その中で以下の作業を行いなさい。
前回(1/22)の課題ができていない人は、そちらを先にやりなさい。
基本課題1:「商品を表すクラスの拡張(1)」
- ソースファイル
Shokuryouhin.javaを作成しなさい。
- コンパイルしてエラーがないことを確認しなさい。
- このプログラムは、まだ単独では実行できません。
基本課題2:「商品を表すクラスの拡張(2)」
- 課題1:を参考にして、同様にクラス Nitiyouhin を定義しなさい。
- publicでクラス名は Nitiyouhin 、Shouhinクラスを継承
- 製品の生産国を表す
public な Stringクラスのフィールド madein を新たに追加
- "shouhinmei:nedan:madein" の形式の文字列を返り値として返す
ように toString()メソッドを再定義する
- コンストラクタは、Shokuryouhin同様
String, int, String の3個の引数を取り、順に
shouhinmei, nedan, madein の値の初期値とする
- コンパイルしてエラーがないことを確認しなさい。
- このプログラムは、まだ単独では実行できません。
基本課題3:「スーパークラスの活用」
- ヒント
を元に、課題1,2のデータが混在する配列を用意し、その内容を
食料品と日用品に分けて表示する
メソッド bunrui()を用意しないさい。
bunrui()は static で返り値はなし、
引数に Shouhinクラスの配列を与える形式にします。
(簡単のため、食料品と日用品以外の商品は含まれないことにします。)
プログラム名(クラス名)は ShouhinTest4.java とします。
- コンパイルしてエラーがないことを確認しなさい。
- プログラムを実行して表示を確認しなさい。
=== 食料品リスト ===
牛乳:198:1/23 15:00
トマト:58:1/30 18:00
麦茶:148:3/31 23:00
=== 日用品リスト ===
シャンプー:500:Japan
タオル:220:China
基本課題4:「合計金額を返すメソッドの追加」
- 課題3のプログラムに、商品の分類ごとの商品の一覧と、
分類別の価格の合計、さらに最後に総合計の金額を計算するメソッド
meisai()を追加したプログラムを作成しなさい。プログラム名(クラス名)は
ShouhinTest5.javaとします。
meisai()は Shouhinクラスの配列を引数に受け取り返り値はありません。
(簡単のため、食料品と日用品以外の商品は含まれないことにします。)
- main()の中では bunrui()の代わりに meisai()を呼び出します。
- コンパイルしてエラーがないことを確認しなさい。
- プログラムを実行して表示を確認しなさい。
=== 食料品リスト ===
牛乳:198:1/23 15:00
トマト:58:1/30 18:00
麦茶:148:3/31 23:00
食料品合計金額???円
=== 日用品リスト ===
シャンプー:500Japan
タオル:220China
日用品合計金額???円
====================
総合計金額????円
今週のレポート課題(学内用):
ここまでの課題が終わった人は、下記の項目を
tatsuo宛のメール
で報告しなさい。(Subjectは program25)
- 課題4 の出力結果
- 課題4 のソースプログラム(添付でも可)
過去のやりのこし課題が残っている人は、実習の残り時間、空き時間を利用して
仕上げなさい。まだ出していないメールのレポート課題がある人も同様。
実習の目次
今週の講義の内容