重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

class Book{
String title, size;
int price;

Book(String title, String size, int price){
this.title = title;
this.size = size;
this.price = price;
}

public String info(){
return title + " " + size;
}

public String info(String title){
return title + " " + size + " " + price +"円";
}

public int info(String title, String size){
return price;
}
}

________________________________________________________

class Book_test{
public static void main(String[] args){

String[] title = {"図鑑","参考書","雑誌","地図"};

String[] size = {"B4", "A5", "A4", "A3"};

int[] price={4500, 1800, 600, 1400};

Book[] b = new Book[4];

for(int i=0; i<b.length; i++){
b[i] = ****;

}
for(int i=0; i<b.length; i++){
System.out.println(***);
}
for(int i=0; i<b.length; i++){
System.out.println(***);
}
for(int i=0; i<b.length; i++){
System.out.println(***);
}
}
}

実行結果は、以下の通り
図鑑 B4
参考書 A5
雑誌 A4
地図 A3
図鑑 B4 4500円
参考書 A5 1800円
雑誌 A4 600円
地図 A3 1400円
4500
1800
600
1400

このように表示するために、javaのソースコードを書かなくてはならないのですが、***の部分に何を入れれば良いのか分かりません。
特に、for文の部分です。

classが苦手なので分かりやすく教えていただけると幸いです。

A 回答 (3件)

オーバーロードは型や個数が異なる引数に対して同じ処理があるときに使うもので、互いに無関係な処理を同一のメソッド名にするために使うものではありません。



こんなオーバーロードの使い方を教える人の講義なり何なりを受けるのはやめなさい。
本なりサイトなりの記述だったらそんなものを読むのはやめなさい。
学校の宿題だったら、……しょうがないので回答書きますのでこのまま提出してください。

1番目:new Book(title[i], size[i], price[i])
2番目:b[i].info()
3番目:b[i].info("こんな糞コード教えるんじゃねーよ")
4番目:b[i].info("この悪口に怒るのは勝手だけどさぁ、", "これでもちゃんと指定した実行結果どおりの表示をするから正解だろ?")
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

学校の宿題です(汗)

>オーバーロードは型や個数が異なる引数に対して同じ処理があるときに使うもので、互いに無関係な処理を同一のメソッド名にするために使うものではありません。

なるほど…、勉強になります。

実行結果になるようにいじった所、

b[i].info()
b[i].info(title[i])
b[i].info(title[i],size[i])

でしょうか?

上記部分に関しては、先生に質問してみようと思います。
回答ありがとうございました^^

お礼日時:2012/12/10 07:07

> Ans1の方の3番目が間違っているので、以下で。


> 3番目:b[i].info(title[i]);
アィエェェ……速やかにセプクすべきミスでした。
teketon様、ご指摘ありがとうございます。
    • good
    • 0

Ans1の方に同意します。

これはゴミ。

Ans1の方の3番目が間違っているので、以下で。
3番目:b[i].info(title[i]);


講師も多分、実行していないコードですね。
    • good
    • 0
この回答へのお礼

なるほど…。
これは先生放置で、独学で勉強した方が良さそうですね…。

回答ありがとうございました!

お礼日時:2012/12/10 07:11

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!