小狗的状态(java)

news/2024/11/28 22:41:42/

小狗在不同环境条件下可能呈现出不同的状态表现,要求用接口封装小狗的状态。具体要求如下:

  1. 编写一个接口DogState,该接口有一个名字为void showState()的方法。
  2. 编写Dog类,该类中有一个DogState接口声明的变量State。另外,该类有一个show()方法,在该方法中让接口state回调showState()方法。
  3. 编写若干个实现DogState接口的类,负责刻画小狗的各种状态。
  4. 编写主类,在主类中测试小狗的各种状态。

package main;public interface DogState {public void showState();
}public class Dog {DogState state;public void show(){state.showState();}public void setState(DogState s){state=s;}
}
public class MeetEnemyState  implements DogState{void showState(){System.out.println("狗会警惕!");}//重写showState()
}public class MeetFriendState  implements DogState{void showState(){System.out.println("狗会开心!");}//重写showState()
}public class MeetAnotherDog implements DogState{void showState(){System.out.println("狗会摇尾巴!");}//重写showState()
}public class CheckDogState {public static void main(String[] args) {Dog yellowDog=new Dog();System.out.print("狗遇到敌人");yellowDog.setState(new MeetEnemyState());yellowDog.show();System.out.print("狗遇到朋友");yellowDog.setState(new MeetFriendState());yellowDog.show();System.out.print("狗遇到同伴");yellowDog.setState(new MeetAnotherDog());yellowDog.show();}}

运行结果截图:


http://www.ppmy.cn/news/245356.html

相关文章

小狗的小房子

小狗的小房子 孙幼军 2006-07-28 17:20:13 来自: 大不了 了一场雨。雨把天空洗得更蓝,把树叶和草洗得更绿。小狗从他那薄木板的小房子里跑出来,看看太阳,打了一个喷嚏,又在院子里滚了两个滚儿,觉得开心极了&#xff…

契诃夫的大狗叫,小狗也叫

网上查到的大狗小狗论,真是契诃夫老哥的 俄国作家契诃夫说,大狗叫,也得让小狗叫,咱们把自己当做小狗就是了。没有大狗凶猛,声音也比大狗小,可不能拿小狗不当狗啊! 我们为什么而写作&#xff1f…

make 模块化单独编译 system system_ext framwork

1.编译 system.img make systemimage fastboot flash system system.img 2.编译system_ext.img make systemextimage fastboot flash system_ext system_ext.image 3.make framwork make services adb push out/target/****/system/framwork/arm /system/framewor…

小狗钱钱

小狗钱钱 你是否能成功,最关键的因素并不在于你是不是有一个好点子,你有多聪明也不是主要原因,决定因素是你的自信程度。 作者:[德]博多舍费尔 前 言 一般人都希望自己变得富有一些,只是我们中的一些人的这一愿望更为强…

小狗的状态

小狗在不同环境条件下可能呈现不同的状态表现,要求用接口封装小狗的状态。 代码如下: interface DogState{public void showState(); }class SoftlyState implements DogState {public void showState(){System.out.println("听主人的命令&#xff…

一只小狗

如果每个人的命运是掌握在自己手里的话,那么一只宠物的命运应该就掌握在他主人的手中。动物无法掌控自己的命运,那作为高级生物的我们,真的能掌控自己命运吗,一切事冥冥中已经注定,还是一张白纸需要去涂鸦,…

戴森向小狗下刀,吸尘器市场中外乱战开启?

近日,小狗吸尘器创始人檀冲的一则朋友圈引起吸尘器行业的广泛关注,在国内吸尘器市场占据头部的英国品牌戴森竟然约黑稿抹黑小狗。 戴森以网红、科技感已经在中国市场占据较高的市场份额,为何要向小狗吸尘器下手?表面看上去风平浪静…

小狗7岁了

变量就是在程序的运行过程中数值可变的数据,用来记录运算中间结果或保存数据。程序会为变量在内存中开辟一个存储区域,该区域有自己的名称(变量名),类型(数据类型),该区域的数据可以…