Czy Java 8 obsługuje zamknięcia?

Jestem zmieszany. Myślałem, że Java8 wyjdzie z epoki kamienia i zacznie wspierać lambdy / zamknięcia. Ale kiedy próbuję:

public static void main(String[] args) {
    int number = 5;

    ObjectCallback callback = () -> {
        return (number = number + 1);
    };

    Object result = callback.Callback();
    System.out.println(result);
}

tu jest napisanenumber should be effectively final. Myślę, że to nie zamknięcie. To po prostu brzmi jak kopiowanie środowiska według wartości, a nie przez odniesienie.

Pytanie bonusowe!

Czy android będzie obsługiwał funkcje Java-8?

questionAnswers(4)

yourAnswerToTheQuestion