나는 Generics에 익숙하지 않으며 문제가 있습니다.체크 된 캐스트를 수행하는 방법은 무엇입니까?
public class A {}
public class B extends A {}
public <T extends A> T getB()
{
A test = new B();
Class<B> clazz = B.class;
if (clazz.isInstance(test))
{
return (T)test;
}
return null;
}
이 검사되지 않은 캐스트 경고를 생성
는 다음과 같은 코드를 생각해 보자. return (T)test;
행에 있습니다. 하지만 분명히 if (clazz.isInstance(test))
행으로 유형을 확인하고 있습니다.
"체크 된 캐스트"할 수있는 방법이 있습니까?
경고를 표시하지 않고 실제로 체크 된 캐스트를 구현하려고하지 않습니다. 불행히도 체크 캐스트를 수행하는 방법에 대한 정보를 찾을 수 없습니다.
완벽! 내 실제 코드는 Class 매개 변수에서 이미 전달되었습니다. 이상한 나는 "던지다"기능을 놓쳤다. 감사! – AllenKll