interface Foo<E extends Foo<E>> { ... }
という定義を見たのですが、これってどういう意味なんでしょうか。
ぱっと見では、Foo<E> が Foo<E> を継承しているように見えますが、
継承関係が再帰的になってしまい、おかしいように思えます。
だれか解説してください。