>>313 コンストラクタにファクトリを与えるようにしてみました。

interface ChildCreator<Child> {
 Child createChild();
};

void test() {
 Bar<Foo> bar = new Bar<Foo>(new ChildCreator<Foo>() {
  public Foo createChild() { // ※
   return new Foo();
  }
 });

 ...
}

※のところで以下のような警告が出たのですが、意味が分からない…。
(Eclipse3.1M4+jdk1.5.0_01使っています)

Type safety: The return type Foo of the method createChild()
of type new ChildCreator<Foo>(){} needs unchecked conversion
to conform to the return type Child of inherited method

new ChildCreator<Foo>(){}の中にあるメソッドcreateChild()の返却値の型
Fooは、継承されたメソッドの返却値の型Childに一致させるために、
チェック無しの変換が必要...???