==
小狗在不同的条件下可呈现不同的状态表现,要求用接口封装小狗的状态:
编写一个接口DogState,其中有一个void showState()方法,呈现小狗的不同状态;
编写一个Dog类,通过show()方法回调showState();
编写若干个实现DogState接口的类,负责刻画小狗不同的状态;
编写主类,测试小狗不同状态。
==
package
com.servicel;
public interface DogState {
public void showState();
}
class SoftlyState implements DogState {
public void showState(){
System.out.println("听主人的命令");
}
}
class MeetEnemyState implements DogState {
public void showState(){
System.out.println("狂叫,并冲向去狠咬敌人");
}
}
class MeetFriendState implements DogState {
public void showState(){
System.out.println("晃动尾巴,表示欢迎");
}
}
class MeetAnotherDog implements DogState {
public void showState(){
System.out.println("嬉戏");
}
}
class Dog{
DogState st