Java 状态模式实现天气状态变化:代码示例与解析
以下是完整的 Java 代码:
public interface WeatherState {
public void showState();
}
public class Weather {
WeatherState state;
public void show() {
state.showState();
}
public void setState(WeatherState s) {
state = s;
}
}
public class CloudyDayState implements WeatherState {
public void showState() {
System.out.print('多云');
}
}
在这段代码中,WeatherState 是一个接口,其中定义了一个 showState() 方法。Weather 类有一个 state 变量来保存天气状态,并且有一个 show() 方法来展示当前天气状态,它调用了 state 的 showState() 方法来显示具体的天气信息。setState() 方法用于设置天气状态。
CloudyDayState 类实现了 WeatherState 接口,并重写了 showState() 方法,它打印出了多云的天气信息。
你可以根据你的需求继续完善这段代码,添加其他天气状态的实现类或者在 Weather 类中添加更多的功能。
原文地址: https://www.cveoy.top/t/topic/CpL 著作权归作者所有。请勿转载和采集!