Как указывал aziz_aon, вам также нужно либо объявить класс main в отдельном файле, либо сделать класс Forecast внутренним классом.
Я бы предложил переместить класс Forecast в основной класс
Чтобы сделать это, вам нужно переместить его внутрь Main, как если бы вы делали это с помощью функции.
(Извините за форматирование я на мобильном телефоне)
Проблема в том, что вы заявляете
String[] rainyDays;
затем вы пытаетесь присвоить новое значение, например
String[] rainyDays = new String[] {"Monday", "Friday"};
но вы уже определили rainyDays
как String [], поэтому вы не можете сделать это снова
измените его на
rainyDays = new String[] {"Monday", "Friday"};
так что ваш класс выглядит так:
public class Forecast
{
public int temperature;
public int pressure;
}
public class Main
{
public static void changeTheString(String weather)
{
weather = "sunny";
}
public static void changeTheArray(String[] rainyDays)
{
rainyDays[1] = "Sunday";
}
public static void changeTheObject(Forecast forecast)
{
forecast.temperature = 35;
}
public static void main (String[] args)
{
String weather = "rainy";
changeTheString(weather);
String[] rainyDays;
System.out.println("The rainy days were on " + rainyDays[0] + " and " + rainyDays[1]);
rainyDays = new String[] {"Monday", "Friday"};
changeTheArray(rainyDays);
System.out.println("The rainy days were on " + rainyDays[0] + " and " + rainyDays[1]);
Forecast forecast = new Forecast();
forecast.pressure = 700;
forecast.temperature = 20;
changeTheObject(forecast);
System.out.println("The temperature is " + forecast.temperature + " Celsius");
}
}