初IntelliJ IDEA
今日もJavaの勉強。昨日TLで14が出たとかなんとか流れてたので、なんとなくIntelliJ IDEAをダウンロードして触ってみたりしながら。
IDEAなんか触感がすごくいい。最初に調べたドキュメントはやっぱりこういう感じでした。
Unit Testing and Code Coverage - IntelliJ IDEA - Confluence
Local Classes
んで。Oracleのチュートリアル読んでたら、Local Classesというところで。「ブロックの中にクラス定義できるんか!」と、サンプルをIDEAでごにょごにょ触ってみてました。
effectively final
そしたら、「これはJava8だと動くよ」ってコメントアウトされてる部分があって、ほぅ・・・とアンコメントしてみたら。動いたのだけど。よく見てみると、finalついてないパラメータや変数をInnerクラス内で使ってて。はっ?ってなって、ドキュメント見なおしたら、finalとみなせるような変数はfinalついてなくてもそういう風に扱えるようになったんだよ!これを「effectively final」っていうんだヨ!って書いてあって、しばらくぼーっとしました。まじか!!