ホームへ
情報処理技法(Javaプログラミング)2のトップページへ
情報処理技法(Javaプログラミング)2第2回課題
情報処理技法(Javaプログラミング)2の第2回課題の内容です。
※他人の課題をコピーしていた場合は、コピーさせた側・コピーした側とも、0点とするので、他人の課題を写したりせずに作成すること
課題内容
その1からその3まで、プログラムを作ること(1つのプログラムにつき1つ〜3つのファイル)
その1
以下の3つのクラスを持つプログラム(スーパーの売上計算のプログラム)を作ること
- 1つ目のクラス: 通常販売の商品の情報を管理するクラス
- フィールド: 商品の名前(String型), 商品の値段(int型)
- 1つ目のメソッド: 商品の情報を標準出力で出力するメソッド( 「『xx』という名前の商品はyy円です。」という文字列を標準出力で出力(xxは商品の名前、yyは商品の値段))
- 2つ目のメソッド: 商品の値段を返すメソッド
- 2つ目のクラス: タイムサービス品の情報を管理するクラス
※タイムサービスの割引率は、常に5割引とする
- フィールド: 商品の名前, 商品の値段(int型)
- 1つ目のメソッド: 1つ目のクラスからそのまま継承
- 2つ目のメソッド: 1つ目のクラスの2つ目のメソッドをオーバーライド
- 引数: なし
- 戻り値: 割引率を考慮して計算した商品の値段(int型)
※例えば、400円の商品の場合、戻り値は200
- 3つ目のクラス: 上記3つのクラスのメソッドを呼び出し、商品の情報の表示と、1日の売り上げ金の計算をするクラス
- 商品の情報が書かれたファイルを用意しておき、そのファイルを読み込み
- 読み込んだファイルについて、通常販売の商品・タイムサービス品で、1つ目または2つ目のクラスのオブジェクトを作成し、フィールド変数の値を設定
- 作成した全てのオブジェクトについて、1つ目のクラスの1つ目のメソッドを呼び出し、販売した商品の情報を標準出力で出力
- 1つ目のクラスの2つ目のメソッドを使って、1日の売り上げの金額を計算し、標準出力で出力
※商品の情報が書かれたファイルは、1行に「通常/タイムの別, 商品の名前, 値段」という形式で書かれていることとする。
---- 商品の情報のファイルの例 ----
通常, お茶, 120
タイム, 牛肉, 600
タイム, 牛乳, 200
通常, トマト, 300
その2
下記のウィンドウを、レイアウトマネージャで作るプログラム(使っている部品と位置関係がだいたい同じであれば良い)
その3
下記のウィンドウ(Webブラウザの見た目のまね)を、
- 座標を指定して作るプログラム(使っている部品と位置関係がだいたい同じであれば良い)
- レイアウトマネージャで作るプログラム(使っている部品と位置関係がだいたい同じであれば良い)
の双方で作り、下記の考察をすること
- 座標指定の利点と欠点
- レイアウトマネージャの利点と欠点
- 座標を指定する方が向いているウィンドウはどのようなものか
- レイアウトマネージャを使う方が向いているウィンドウはどのようなものか
※「戻る」・「進む」・「中止」・「更新」・「ホーム」ボタンは、何か絵を用意して、絵を貼り付けること
※課題提出時に、ボタンに貼り付けた絵も一緒に添付して提出すること
提出期限
12月20日(火) 18:00
提出先
WebClassの「第2回課題」の提出場所に、javaファイル(classファイルではなく)をzipファイルにまとめたもの提出すること
zipファイル作成方法
Javaファイルを4つ提出する必要がありますが、WebClassの提出場所はファイルを1つしか提出できません。そこで、下記の方法で、4つのファイルを1つにまとめたzipファイルを作成します。
- 「学生番号-Java2-2」(すべて半角英数)というフォルダ(学生番号が「knnx1001」であれば、「knnx1001-Java2-2」というフォルダ)を作成し、Javaファイルをすべてこのフォルダの中に入れる
- 1. のフォルダの上で右クリック→「XXを圧縮」を選択する(「XX」の部分は、選択したものによって違う)
- 「学生番号-Java2-2.zip」というファイルができあがるので、このファイルをWebClassに提出する
注意事項
- きちんとコンパイルして、正しい結果が出力されるかどうかを確かめてみること
- うまくいかなかった場合には、下記のことを書いて提出すること
- どれだけがんばったか
- どこがどうなって、うまくいかなかったか
※プログラムが未完成でも、がんばりに応じて評価するので、しっかり主張すること
Copyright (C) Junko Shirogane, Tokyo Woman's Christian University 2016, All rights reserved.