Advertisement
Guest User

Untitled

a guest
Mar 21st, 2019
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.61 KB | None | 0 0
  1. // Java code​​​​​​‌​​​​‌​​‌‌​​‌‌​‌​​​​‌‌‌​‌ below
  2. interface IWeatherStation {
  3.     void setData(int temperature, int pressure);
  4.     int getTemperature();
  5.     int getPressure();
  6. }
  7.  
  8. interface IDisplay {
  9.     void update(IWeatherStation station);
  10. }
  11.  
  12. class WeatherStation implements IWeatherStation {
  13.     private IDisplay temperatureDisplay;
  14.     private IDisplay pressureDisplay;
  15.     private int currentTemperature = 0;
  16.     private int currentPressure = 0;
  17.  
  18.     public WeatherStation(IDisplay temperatureDisplay, IDisplay pressureDisplay) {
  19.         this.temperatureDisplay = temperatureDisplay;
  20.         this.pressureDisplay = pressureDisplay;
  21.     }
  22.  
  23.     public void setData(int temperature, int pressure) {
  24.         currentTemperature = temperature;
  25.         currentPressure = pressure;
  26.         temperatureDisplay.update(this);
  27.         pressureDisplay.update(this);
  28.     }
  29.  
  30.     public int getTemperature() {
  31.         return currentTemperature;
  32.     }
  33.  
  34.     public int getPressure() {
  35.         return currentPressure;
  36.     }
  37. }
  38.  
  39. class TemperatureDisplay implements IDisplay {
  40.     public void update(IWeatherStation station) {
  41.         System.out.println("Temperature: " + station.getTemperature());
  42.     }
  43. }
  44.  
  45. class PressureDisplay implements IDisplay {
  46.     public void update(IWeatherStation station) {
  47.         System.out.println("Pressure: " + station.getPressure());
  48.     }
  49. }
  50.  
  51. class WeatherStationFactory {
  52.     public static IWeatherStation createWeatherStation(IDisplay[] displays) {
  53.         return new WeatherStation(displays[0], displays[1]);
  54.     }
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement