すべて 指定のパッケージ内に作成してください
ソースコード(クラス名.java)をSドライブにアップロードして提出してください
S:\Java\課題提出\基礎\12章
直方体を表現するクラスを作成します。
以下の仕様でクラスを作成してください。
パッケージ | chapter12.kadai1 |
---|---|
クラス名 | Box |
フィールド | 必要な値を自分で考えること |
引数なし コンストラクタ |
縦、横、高さを全て0とする |
コンストラクタ (引数に整数3つ) |
引数で縦、横、高さの値を受け取り、その値をフィールドに設定する。 1つでも0以下の値が指定された時には、全ての辺の値を0とする |
メソッド | int getVolume() 体積を計算してリターンする 直方体の体積は、縦×横×高さ int getAllArea() 表面積を計算してリターンする 直方体の表面積は、(縦×横+縦×高さ+横×高さ)×2 void dispLength() 縦、横、高さ それぞれの長さをコンソールに表示する void dispAll() 縦、横、高さの長さ、体積、表面積をコンソールに表示する void setLength(int, int, int) 引数で縦、横、高さの値を受け取り、その値をフィールドにセットする 1つでも0以下の値が指定された時には、全ての辺の値を0とする |
上記 Box クラスを呼び出す BoxMain クラスを作成し、mainメソッドから各コンストラクタ、メソッドを呼び出し、Boxクラスの機能をテストしてください。
商品在庫を管理するクラスを作成します。
以下の仕様のクラスを作成してください。
パッケージ | chapter12.kadai2 | ||||||
---|---|---|---|---|---|---|---|
クラス名 | Zaiko | ||||||
フィールド |
|
||||||
定数フィールド |
public static final int LIMIT = 10 追加発注アラートの定数値 在庫がこの値より少なくなったらアラートを表示 |
||||||
コンストラクタ | 引数で商品名(String)と、初期在庫数(int)を受け取り、フィールドにセットする。 初期在庫数にマイナスの値がセットされたら0にする |
||||||
メソッド | void changeItemName(String item) 商品名変更処理。「商品名を変更しました。旧:○○ 新:●●」と表示 int nyuuka(int add) 入荷処理。
出荷処理。
在庫数チェック。 「商品名: ○○ 在庫数: ○個」と画面に出力し、在庫数をリターンする。 |
上記 Zaiko クラスを呼び出す ZaikoMain クラスを作成し、mainメソッドから各コンストラクタ、メソッドを呼び出し、Zaikoクラスの機能をテストしてください。
実行結果サンプル(「*** ***」で囲われた部分はmainからの出力)
この通りでなくても、全てのコンストラクタ、メソッドがテストできればOK
*** えんぴつ 20 で新規商品登録 ***
商品名:えんぴつ 在庫数:20個
*** 商品名を変更 ***
商品名を変更しました。旧: えんぴつ 新: 鉛筆HB
商品名:鉛筆HB 在庫数:20個
*** 20個入荷 ***
入荷処理を行いました
商品名:鉛筆HB 在庫数:40個
*** 100個出荷 ***
在庫が40個のため、100個出荷できません。出荷処理をキャンセルします
商品名:鉛筆HB 在庫数:40個
*** 5個出荷 ***
出荷処理を行いました
商品名:鉛筆HB 在庫数:35個
*** -5個入荷 ***
入荷数が不正です
商品名:鉛筆HB 在庫数:35個
*** -5個出荷 ***
出荷数が不正です
商品名:鉛筆HB 在庫数:35個
伝票、明細を表現するクラスを作成します。
あるカフェでは、以下のような伝票を作成し、一回の会計ごとに管理しています。価格は消費税込みです。
品名 | 単価 | 数量 | 小計 | |
---|---|---|---|---|
アイスコーヒー | 250 | 2 | 500 | → 明細 |
ロイヤルミルクティー | 350 | 1 | 350 | |
チーズケーキ | 400 | 1 | 400 | |
いちごパフェ | 800 | 1 | 800 | |
合計 | 2,050 |
横1行分を明細クラス、伝票全体を伝票クラスとして設計・作成してみましょう。
1伝票には、最大50明細入れば、このお店の業務には支障がありません。
どんなフィールド、メソッドが必要か考えて実装してみましょう。
また、mainメソッドを持つクラスを作成し、オーダーの受注、会計処理などをイメージして各クラスを呼び出してみましょう。