以下是完整的 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() 方法来展示当前天气状态,它调用了 stateshowState() 方法来显示具体的天气信息。setState() 方法用于设置天气状态。

CloudyDayState 类实现了 WeatherState 接口,并重写了 showState() 方法,它打印出了多云的天气信息。

你可以根据你的需求继续完善这段代码,添加其他天气状态的实现类或者在 Weather 类中添加更多的功能。

Java 状态模式实现天气状态变化:代码示例与解析

原文地址: https://www.cveoy.top/t/topic/CpL 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录