int i
次の例では、パラメーターを次のように設定して動作し、コンパイルします。final
class Miner1
{
Miner getMiner(final int i) {
return new Miner() {
public void perform_work() {
System.out.println(i);
}
};
}
interface Miner { void perform_work(); }
それ以外の場合、前の例のように final に設定されていない場合、コンパイルされません。理由を知っている人はいますか?final
中括弧がまだ閉じられていないため、なくても範囲内にある必要があります。
前もって感謝します。