LINUX.ORG.RU

История изменений

Исправление fsb4000, (текущая версия) :

Ещё чуток, чтобы закончить...

Как видно из ошибки, ограничение на final только для локальных переменных. Если у тебя поле класса, то всё ок и без final...

public class Main {
    static String res = "hello";
    public static void main(String[] args) throws InterruptedException {

        new Thread(new Runnable() {
            @Override
            public void run() {
                res += " world";
            }
        }).start();
        Thread.sleep(100);
        System.out.println(res);
    }
}

hello world

Исходная версия fsb4000, :

Ещё чуток, чтобы закончить...

Как видно из ошибки, ограничение на final только для локальных переменных. Если у тебя поле класса, то всё ок и без final...

public class Main {
    static String res = "hello";
    public static void main(String[] args) throws InterruptedException {

        new Thread(new Runnable() {
            @Override
            public void run() {
                res += " world";
            }
        }).start();
        Thread.sleep(100);
        System.out.println(res);
    }
}
hello world