今回も、前回に引き続き、Project Lambdaの紹介をしていきましょう。 前回はラムダ式について紹介しました。しかし、Project Lambdaによる言語仕様の変更はラムダ式だけではありません。そこで、今回と次回でラムダ式以外の言語仕様の変更についてまとめてみましょう。 実質的final 前回、説明したようにラムダ式は関数型インタフェースを実装した匿名クラスの簡易的な記述法になります。このため、匿名クラスの性質をそのまま引き継いでいます。 その一つにスコープがあります。 匿名クラスは、定義されたメソッドで使用されているローカル変数にはfinalをつけない限り、参照することはできません。 例えば、JavaFXでは、ボタンのイベント処理時に、他のコントロールを参照することがよくあります。このような場合、リスト1の赤字で示したようにイベント処理で参照するコントロールにfinalを付加する
![詳解 Java SE 8 第3回 Project Lambdaでの言語仕様変更 その1](https://cdn-ak-scissors.b.st-hatena.com/image/square/bed39b5962a5d552c95b6d796db8f55e72d32943/height=288;version=1;width=512/https%3A%2F%2Fxtech.nikkei.com%2Fimages%2Fn%2Fxtech%2F2020%2Fogp_nikkeixtech_hexagon.jpg%3F20220512)