types)と呼びます。クロージャで記述できるのは、それらSAM型のクラスだけです。}SAM型であれば、何か特別な宣言を追加しなくとも、この新しいクロージャで記述を代替できます。既存のAPIも特別な対処をしなくても、この恩恵にあずかれるわけです。p.isTrue(aStudent);のようにisTrueメソッド呼び出しができます。};と書くこともできます。いっても、Groovyのようにどんなオブジェクトでも受け取れるvariantっぽい型になるわけではなくて、型推論によって結局静的に1つの型に決定されます。};と書いた場合とまったく同じ意味になります。}});という記法が冗長すぎてイヤんなので、クロージャを使おう。});こう書けるようになった。getLastNameって書きすぎだろ。});わかりやすいね!、というお話。#Person.getLastName);こう書けるようにしてみました。references)。()とか引数は不要です。個人的にはなんかちょっとやりすぎ感が否めない...。methods他言語のMixinやTraitに対するJavaの回答がこれ。Collections.<T>setReducer;}ってことで、インタフェースにデフォルトの振る舞いをビルトインできるようになりました。インタフェースの実装クラスでオーバーライドしなければ、defaultで指定していたクラスのメソッドが使用されます。だいたいこんな感じです。千秋楽はMariottホテルで月別アーカイブはてなブログをはじめよう!nobeansさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。