Q.Monkeyクラスを作成し、MonkeyAppクラスから以下の処理を実現せよ。(アクセス性はすべてpublicでよい)
[実行例]
おさるの名前を決めてください:>トシ
おさるの歳を決めてください:>3
おさるに何をさせますか?1…挨拶、2…竹馬、3…逆立ち、4…終了>1
こんにちはトシ(3才)です。よろしく!
おさるに何をさせますか?1…挨拶、2…竹馬、3…逆立ち、4…終了>2
トシは上手に竹馬にのった!
おさるに何をさせますか?1…挨拶、2…竹馬、3…逆立ち、4…終了>3
トシはひょいと逆立ちをした!
おさるに何をさせますか?1…挨拶、2…竹馬、3…逆立ち、4…終了>4
アプリケーションを終了します。
[解答例]
●Monkey.java
public class Monkey {
/****フィールド変数****/
public String name;
public int age;
/****コンストラクタ****/
public Monkey(String name,int age){
this.name=name;
this.age=age;
}
/****メソッド****/
//挨拶をするメソッド
public void greet(){
System.out.printf("こんにちは%s(%d才)です。よろしく!\n",this.name,this.age);
}
//竹馬をするメソッド
public void takeuma(){
System.out.printf("%sは上手に竹馬にのった!\n",this.name);
}
//逆立ちをするメソッド
public void sakadachi(){
System.out.printf("%sはひょいと逆立ちをした!\n",this.name);
}
}
●MonkeyApp.java
import java.util.Scanner;
public class MonkeyApp {
public static void main(String[] args) {
//スキャナーインスタンスを生成
Scanner scan =new Scanner(System.in);
//名前をきく
System.out.print("おさるの名前を決めてください:>");
String name=scan.next();
//歳をきく
System.out.print("おさるの歳を決めてください:>");
int age=scan.nextInt();
//Monkeyインスタンス生成
Monkey monkey=new Monkey(name,age);
//繰り返し処理
while(true){
System.out.print("おさるに何をさせますか?1...挨拶、2...竹馬、3...逆立ち、4...終了>");
int select =scan.nextInt();
switch(select){
case 1:
monkey.greet();
break;
case 2:
monkey.takeuma();
break;
case 3:
monkey.sakadachi();
break;
default:
System.out.println("アプリケーションを終了します。");
scan.close();
//リターンでメソッドを抜ける(mainメソッドを抜けて終了)
return;
}
}
}
}
コメント