今村ゼミ 夏期課題<A 方式>「Java の問題 15 問」(第 1 回)

今村ゼミ 夏期課題<A 方式>「Java の問題 15 問」
(第 1 回)
以下の設問に従ってコーディングを行い、そのコードを Word 文書に張り付けてメールで
お送りください。
宛先:[email protected]
締切:2015 年 8 月 18 日(火)
問題 1
次の九九の表をコンソール出力するプログラムを作成しなさい。クラス名は kuku
とします。
(出力結果)
123456789
2 4 6 8 10 12 14 16 18
.............(略).............
9 18 27 36 45 54 63 72 81
問題 2 次のような Hero クラスがある。
class Hero
{
private int power;
void setPower(int p){
power = p;
}
void walk(){
System.out.println("てくてく...");
power--;
}
}
メインメソッドを含む PlayWithHero クラスを作成し、ヒーローのオブジェクト「hero」
を生成して、パワーの値を 10 に設定しなさい。さらにその中で、walk メソッドを使って 1
回 散 歩 さ せ な さ い 。 た だ し Hero ク ラ ス は 、 PlayWithHero ク ラ ス と 同 じ フ ァ イ ル
PlayWithHero.java の中に書くこと。
問題 3 問題 2 の Hero クラスに、パワーの値を参照するための getPower メソッドを定義
しなさい。さらに PlayWithHero のメインメソッド内で散歩の前後でパワーの値を、
(出力結果)
パワー:10
てくてく...
パワー:9
と表示できるようにしなさい。
問題 4 問題 3 の Hero クラスに、引数付きコンストラクタ Hero を定義し、オブジェクト
生成時にパワーの値を設定できるようにしなさい。さらに PlayWithHero のメインメソッ
ド内では、実際にこのコンストラクタを用いて、パワー20 でオブジェクトを生成して散歩
させなさい。
(出力結果)
パワー:20
てくてく...
パワー:19
問題 5 問題 3 の Hero クラスを継承(派生)して、空を飛ぶ FlyHero クラスを作成しなさ
い。追加するメソッドは、fly メソッドとし、
「飛ぶよ!びゅーん!!」と出力するものとす
る。PlayWithHero のメインメソッド内では、FlyHero のオブジェクト fhero を生成し、fly
メソッドで飛んだ後、散歩して前後でパワーの値を表示させなさい。
(出力結果)
飛ぶよ!びゅーん!!
パワー:10
てくてく...
パワー:9
発展:fly メソッドを実行することでパワーが 2 減るようにするにはどうすればよいか考え
てみよう。