这篇文章主要为大家介绍了如何利用Java语言实现天气预报播报功能,文中的示例代码讲解详细,对我们学习Java有一定的帮助,需要的可以参考一下
实验代码
WeatherState.java
package lab2;
public interface WeatherState {
public void showState();
}
Weather.java
package lab2;
public class Weather {
WeatherState state;
public void show() {
state.showState();
}
public void setState(WeatherState s) {
state = s;
}
}
WeatherForecast.java
package lab2;
public class WeatherForecast {
public static void main(String args[]) {
Weather weatherBeijing = new Weather();
System.out.print("\n 今天白天:");
weatherBeijing.setState(new CloudyDayState());
weatherBeijing.show();
System.out.print("\n 今天夜间:");
weatherBeijing.setState(new LightRainState());
weatherBeijing.show();
System.out.print("转:");
weatherBeijing.setState(new HeavyRainState());
weatherBeijing.show();
System.out.print("\n 明天白天:");
weatherBeijing.setState(new LightRainState());
weatherBeijing.show();
System.out.print("\n 明天夜间:");
weatherBeijing.setState(new CloudyLittleState());
weatherBeijing.show();
}
}
CloudyLittleState.java
package lab2;
public class CloudyLittleState implements WeatherState {
public void showState() {
System.out.print("少云,有时晴!");
}
}
CloudyDayState.java
package lab2;
public class CloudyDayState implements WeatherState{
@Override
public void showState() {
System.out.println("多云,为阴天!");
}
}
HeavyRainState.java
package lab2;
public class HeavyRainState implements WeatherState {
@Override
public void showState() {
System.out.println("有大雨来临!");
}
}
LightRainState.java
package lab2;
public class LightRainState implements WeatherState {
@Override
public void showState() {
System.out.println("小雨,几乎没有雨!");
}
}
运行结果
以上就是利用Java实现天气预报播报功能的详细内容,更多关于Java天气预报播报的资料请关注编程学习网其它相关文章!
沃梦达教程
本文标题为:利用Java实现天气预报播报功能
猜你喜欢
- Springboot整合minio实现文件服务的教程详解 2022-12-03
- Spring Security权限想要细化到按钮实现示例 2023-03-07
- JSP 制作验证码的实例详解 2023-07-30
- ExecutorService Callable Future多线程返回结果原理解析 2023-06-01
- Java中的日期时间处理及格式化处理 2023-04-18
- 基于Java Agent的premain方式实现方法耗时监控问题 2023-06-17
- Java实现顺序表的操作详解 2023-05-19
- 深入了解Spring的事务传播机制 2023-06-02
- JSP页面间传值问题实例简析 2023-08-03
- SpringBoot使用thymeleaf实现一个前端表格方法详解 2023-06-06