クラスに次のメソッドがあります。AbstractModel は、このクラスを拡張するクラスによって渡されるジェネリックです。このメソッドは現在、渡されたクラスのインスタンスを作成しています。
public AbstractModel newInstance(Class<? extends AbstractModel> clazz){
return injector.getInstance(clazz);
}
現在、私はこれをしなければなりません:
Person person = (Person) em.newInstance(Person.class);
ジェネリックを使用して、AbstractModel オブジェクトを Person にするために必要なキャストを削除できるかどうか疑問に思っています。理想的にはこれだけです:
Person person = em.newInstance(Person.class);
ただし、メソッドに Person オブジェクトを渡していないため、これが可能かどうかはわかりません。