TODOS・何でも情報交換TOPから是非ご覧ください。
一番下の投稿フォームへ > スレッド一覧 > 記事閲覧
o6asanさんのJAVAトライ・その28
日時: 2013/11/27 22:32
名前: o6asan

以下の未完成のプログラムのBugsクラスおよびmainメソッドを完成させて、動作例と同じ
結果が表示されるようにしなさい。ただし、Bugsクラスは以下の仕様を満たすように作成すること。

Bugsクラスの仕様
フィールド
・public static int amountFood: 供給されている餌の総量を保存するint型のクラス変数
 (初期値は0に設定しておく)
・private String name: Bugsインスタンスの名前を保存するString型のインスタンス変数
・private int appetite: Bugsインスタンスが一回の食事でとる餌の量を保存するint型のインスタンス変数

メソッド
・public static void feed(int amount): int型の引数amountで与えられる量の餌を供給する
 (餌の総量に加算する)クラスメソッド(供給した後「餌を***個供給しました。」と表示する)
 (***は供給した餌の個数)
・public static void printAmountFood(): 現在の餌の総量を表示するクラスメソッド
 (「現在の餌の量は***個です。」と表示する)(***は餌の総量)
・public Bugs(String _name, int _appetite): String型の引数_nameで与えられる文字列と、
 int型の引数_appetiteで与えられる数値をそれぞれインスタンス変数nameとappetiteに代入するコンストラクタ
・public void eat(): Bugsインスタンスの一回の食事を実行するメソッド(食事をしたら
 「***は###個の餌を食べました。」と表示する)(供給されている餌が足りない場合は
 「***が餌を食べようとしましたが、餌が足りません。」「餌を供給してください。」と
 表示する)(***はBugsインスタンスの名前、###は食べた餌の量)

動作例
餌を10個供給しました。
現在の餌の量は10個です。
餌を8個供給しました。
現在の餌の量は18個です。
Beeは10個の餌を食べました。
Weeは5個の餌を食べました。
現在の餌の量は3個です。
Beeが餌を食べようとしましたが、餌が足りません。
餌を供給してください。
餌を10個供給しました。
現在の餌の量は13個です。
Beeは10個の餌を食べました。
現在の餌の量は3個です。

未完成のプログラム
class Bugs {
  public static void feed(int amount) {
  }

  public static void printAmountFood() {
  }

  public Bugs(String _name, int _appetite) {
  }

  public void eat() {
  }
}

class Sample28 {
  public static void main(String[] args) {
    Bugs bugA, bugB;
    
    bugA = new Bugs("Bee", 10);
    bugB = new Bugs("Wee", 5);

    Bugs.feed(10);
    Bugs.printAmountFood();
  }
}
メンテ

Re: o6asanさんのJAVAトライ・その28 ( No.1 )
日時: 2013/11/27 22:44
名前: o6asan

Sample28.javaです。
http://o6asan.com/blog-j/files/JAVA/TODOS/Sample28.txt

(注)「未完成のプログラム」では,3番目になっているコンストラクタを一番上に上げました。
  デフォルトコンストラクタは,入れていません。サイトでは,話に出てきていませんが,
  デフォルトコンストラクタは入れておきなさいという話は,講義で出ているかもしれません。
  private String name と private int appetite については final を入れておいたほうが
  いいのかもしれませんが,これはセキュリティ関連なるようですから,講義では,まだ出して
  いないのだと思います。

----------------------------------------------------------------------------------
ずっと,UTF-8でアップロードしてきたのですが,注釈文が日本語で入っていると,コンパイルするときに
エラーになることに気づきましたので,Shift_JISに戻しています。ブラウザで見たときに文字化けするようで
あれば,Shift_JISで読み込みなおしてください。

----------------------------------------------------------------------------------
動作確認は,jdk-7u45-windows-i586.exeでやっています。

この欄に,プログラムを貼ると,インデントが消えてしまいますので,上記のように
txtファイルにリンクを貼っています。

>>0 については,見かけ上インデントできてますが,実は,全角空白を使ったトリックです。
課題中の(未完成のプログラム)をコピー&ペーストで自習に利用する場合は,全角空白を
半角空白に直して使ってください。

実際に,試してみようと思う方は,ダウンロードもできます。
ただし,拡張子をtxtにしてアップしてますので,これをjavaに変更後コンパイルしてください。

一応,動くプログラムは書いていますが,何分JAVA の素人ですので,お気づきの点がありましたら,
よろしくお願いします。
メンテ
Re: o6asanさんのJAVAトライ・その28 ( No.2 )
日時: 2013/11/28 04:57
名前: りり

o6asanさん、ペースが速いですね。

動画です。

http://todos.xsrv.jp/uploader/upl/AGDRec28.wmv
メンテ

楽しい交流と情報交換のTODOS・アップローダーも用意。ぜひTOPからもご覧ください。
ご参考になりましたら、お気軽に一筆お書き込みくださいませ。
題名 スレッドをトップへソート
名前
画像添付
JPEG
GIF
PNG



参照ボタンを押して、PCの画像を指定ください。3枚まで指定できます。縮小画像はクリックで拡大されます。
パスワード (好きなパスワードを。投稿後、右下のスパナマークをクリックし、そのパスワードを入れて修正できます。)
コメント

   クッキー保存
スレッドTOPへ***スレッド一覧