0
클래스에 다음과 같은 메서드가 있습니다. AbstractModel은이 클래스를 확장하는 클래스에 의해 전달되는 제네릭입니다. 이 방법은 현재 전달 된 클래스의 인스턴스를 생성 전달 된 클래스의 인스턴스를 반환하는 제네릭 메서드를 만듭니다.
public AbstractModel newInstance(Class<? extends AbstractModel> clazz){
return injector.getInstance(clazz);
}
은 현재 내가이 작업을 수행 할 수 있습니다.
Person person = (Person) em.newInstance(Person.class);
내가 가지고있는 캐스팅을 제거하기 위해 제네릭을 사용할 수 있는지 궁금하네요 AbstractModel 객체를 Person으로 만드는 작업. 이상적으로는 다음과 같습니다 :
저는 Person 객체를 메서드에 전달하지 않기 때문에 이것이 가능한지 알 수 없습니다.
최고. 감사! – David
당신은 오신 것을 환영합니다. –
은 당근에있는 부분으로, 매개 변수로 메소드에 들어가야하고, 그 다음에 다른 클래스 인 T가 반환되는 클래스입니까? – David