TODOS・何でも情報交換

スレッド全体を表示します***カテゴリー内スレッド一覧

o6asanさんのJAVAトライ・その26 ( No.0 )
日時: 2013/11/15 20:59
名前: o6asan

「o6asanさんのJAVAトライ・その17」 http://todos.xsrv.jp/2patiopro/todos.cgi?no=68
No.3の課題は,系列としては下記の「o6asanさんのJAVAトライ・その25」
http://todos.xsrv.jp/2patiopro/todos.cgi?no=76 の課題と全く同じといっていいので,解答を省略しました。

りりさんがお書きのように,例の先生のページで,課題8が修正され課題8−1となっていたのですが,
こちらのほうが,private変数がらみで,アクセサを使う話としてはわかりやすいようなので,代わりに,
これを「その26」とします。

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

Book1クラスの仕様
フィールド
private String name: 本の名前を保存するString型のフィールド
private int price: 本の価格を保存するint型のフィールド

メソッド
・public Book1(): フィールドnameに文字列"未設定"を、フィールドpriceに0を代入するコンストラクタ
・public Book1(String _name): String型の引数_nameで与えられる本の名前をフィールド
 nameに、フィールドpriceに0を代入するコンストラクタ
・public Book1(String _name, int _price): String型の引数_nameで与えられる本の名前を
 フィールドnameに、int型の引数_priceで与えられる本の価格をフィールドpriceに代入するコンストラクタ
・public void setName(String _name): String型の引数_nameで与えられる本の名前を
 フィールドnameに代入するためのメソッド
・public void setPrice(int _price): int型の引数_priceで与えられる本の価格を
 フィールドpriceに代入するためのメソッド
・public void printName(): フィールドnameに保存された本の名前を表示するための
 メソッド(「本の名前は『・・・』です。」というメッセージを表示する)
・public void printNameAndPrice(): フィールドnameに保存された本の名前と、フィールド
 priceに保存された価格を表示するためのメソッド(「『・・・』の価格は・・・円です。」と
 いうメッセージを表示する)

動作例
『未設定』の価格は0円です。
本の名前は『やさしいJava』です。
『やさしいJava』の価格は2600円です。
『独習Java』の価格は0円です。
『独習Java』の価格は3000円です。
『スッキリわかるJava入門』の価格は2730円です。

未完成のプログラム
class Book1 {
  private String name;
  private int price;

  public Book1() {
  }
  
  public Book1(String _name) {
  }

  public Book1(String _name, int _price) {
  }

  public void setName(String _name) {
  }

  public void setPrice(int _price) {
  }

  public void printName() {
  }

  public void printNameAndPrice() {
  }
}

class Sample26 {
  public static void main(String[] args) {
    Book1 book1, book2, book3;

    book1 = new Book1();
    book1.printNameAndPrice();   // ここで「『未設定』の価格は0円です。」と表示される。
    book1.setName("やさしいJava");
    book1.printName();       // ここで「本の名前は『やさしいJava』です。」と表示される。
    book1.setPrice(2600);
    book1.printNameAndPrice();   // ここで「『やさしいJava』の価格は2600円です。」と表示される。

    book2 = new Book1("独習Java");
    book2.printNameAndPrice();   // ここで「『独習Java』の価格は0円です。」と表示される。
    book2.setPrice(3000);
    book2.printNameAndPrice();   // ここで「『独習Java』の価格は3000円です。」と表示される。

    book3 = new Book1("スッキリわかるJava入門", 2730);
    book3.printNameAndPrice();   // ここで「『スッキリわかるJava入門』の価格は2730円です。」と表示される。
  }
}


TODOS・何でも情報交換TOPから是非ご覧ください。