小狗的状态

news/2024/11/29 0:48:01/

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


代码如下:

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("hello!");}
}class Dog{DogState state;public void show(){state.showState();}public void setState(DogState s){state=s;}
}public class CheckDogState{public static void main(String[] args) {Dog yellowDog=new Dog();System.out.println("狗在主人面前:");yellowDog.setState(new SoftlyState());yellowDog.show();System.out.println("狗遇到敌人:");yellowDog.setState(new MeetEnemyState());yellowDog.show();System.out.println("狗遇到朋友:");yellowDog.setState(new MeetFriendState());yellowDog.show();System.out.println("狗遇到同伴:");yellowDog.setState(new MeetAnotherDog());yellowDog.show();}
}



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

相关文章

一只小狗

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

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

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

小狗7岁了

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

我家的小狗

我家从来不喂养小狗,但是黄老师把他从别人家要来的一只小狗给了我家,因为我喜欢它,爸爸 就同意收下了。 这只小狗颜色很好看,深黄色的,而且长得也胖,每当我用手摸它的时候,它就依靠在我的腿上&…

聪明的小狗bobo

聪明的小狗bobo 有个家庭,家中成员都非常懒惰,每当要做家务时,爸爸推给妈妈,妈妈推给哥哥,哥哥推给妹妹,妹妹推给小狗bobo。一天客人来访,看到bobo两脚站在椅子上,手中拿着抹布正吃…

ThreeJS 炫酷特效旋转多面体Web页 Demo 01《ThreeJS 炫酷特效制作》

本案例为一个 threejs 的特效网页,大小球体进行包裹,外球体为透明材质,但是进行了线框渲染,使其能够通过外球踢查看其内球体。 注:案例参考源于互联网,在此做代码解释,侵删 本案例除 ThreeJS 外…

JavaScript switch 语句

JavaScript中的switch语句是一种用于多分支条件判断的控制流语句。它允许你根据一个表达式的值在一系列可能的情况中进行选择。 下面是switch语句的基本语法: javascript switch (expression) { case value1: // 当表达式的值等于 value1 时执行的代码 …

华为OD机试真题 Java 实现【明明的随机数】【2023Q1 100分】,附详细解题思路

一、题目描述 明明生成了NN个1到500之间的随机整数。请你删去其中重复的数字,即相同的数字只保留一个,把其余相同的数去掉,然后再把这些数从小到大排序,按照排好的顺序输出。 数据范围: 1≤n≤1000 ,输入…