Javaのクロージャをいじってみた。(8)

何か、closureの引数でワイルドカード使うとエラーになる。
詳しく調べてないけど、以下のコードはエラーになった。
(BGGA 2008-08-11版のclosure.jarでやってエラーになった)

 // × コンパイルエラー
 // "? supre T"の周辺で6つぐらいエラーが出る。
 public Integer calc({? super T,Integer} func) {
  // ありゃエラーになる。
 }

 // ○ コンパイル/実行可能
 public Integer calc(Function<? super T,Integer> func) {
  // これはOK
 }

んー これは何か理由あっての制限なのかな。
それともこのバージョンは未完のためエラーになってしまうのかな。

英語だからってBGGAのページのドキュメントを読むのサボったから
見落としたのかな...。汗
 
 

コメント

このブログの人気の投稿

日食ツアーその後

NashornがOpenJDKのリポジトリに入ってたのでビルドしてみた

Javaのクロージャをいじってみた。(1)