나는 ModelDecorator 도우미가 있습니다. 나는 이 Java - 공개 클래스의 경계 API
그래서, 클래스 주어진, B는 확장, 그것은 다음과 같이 사용할 수 있습니다 다음 공개 API
class ModelDecorator<T>{
public static <T> ModelDecorator<T> create(Class<T> clazz);
public <SUPER> T from(SUPER fromInstance);
}
갖고 싶어 :
A a = new A();
B b = ModelDecorator.create(B.class).from(a);
을하지만 T와 SUPER에 대한 경계를 갖고 싶어 그래서 하위 클래스 만 API를 사용하여 인스턴스화 할 수 있는지 확인합니다. 지금이 순간, 내가 할 수있는 :
C c = new C();
B b = ModelDecorator.create(B.class).from(c);
B가 C를
어떤 아이디어가에서 상속하지 않는 경우? 감사합니다
[Java 형식 매개 변수에 낮은 바운드가없는 이유는 무엇입니까?] (http://stackoverflow.com/questions/4902723/why-cant-a-java-type-parameter-have-a-) lower-bound) – shmosel