Интерфейс WeatherType явно же нигде не заюзан,почему вывод коректный может кто то объяснить ? Добавил в код
public String getWeatherType(){
            return type;
        }
и все коректно вывелось .