OgnlRuntimeには、次のものがあります。
static boolean isMethodCallable(Method m)
{
if ((isJdk15() && m.isSynthetic()) || Modifier.isVolatile(m.getModifiers()))
return false;
return true;
}
getDeclaredMethods()で呼び出され、isMethodCallable()がtrueを返した場合、メソッドはスキップされます。これは、scala-trait(scala-2.9以降)のすべてのメソッドが実行されることはないことを意味します。
揮発性(さらに言えば、合成のコンパイラ生成)メソッドをスキップする理由は何ですか?
関連する質問(私による):2.9.0-1の具象クラスに混合すると、トレイトのメソッドは揮発性のメソッドになりますが、2.8.1ではありません