"2 단계"캐스팅을 구현하려는 중 문제가 발생합니다. 거기까지파생 된 제네릭 형식의 자바 지우기
public class Array2D<T>
{
private T[][] _array;
....
public T get(int x , int y)
....
public void set(T o , int x , int y)
}
, 아무 문제 :
다음은 내가 뭘하려고 오전 표시하는 간단한 코드입니다.
나는 내가 게터에 SoftReferences와 세터의 사용을 캡슐화 수 등이 클래스를 확장하기 위해 노력하고있어 :
public class Array2DSoftRefs<T> extends Array2D<SoftReference<T>>
{
public T get(int x , int y)
{
return super.get(x,y).get(); // get the array element, then the SoftReference contents
}
....
public void set(T o , int x , int y)
{
super.set(new SoftReference<T>(o) ,x,y); // generate the SoftReference on-the-fly
}
} 실제로
을, 나는 쫓겨이기 때문에 컴파일러/구문 분석기가 제네릭 지움을 건너 뛰면 @Override
주석이 나를 도와 줄 수 없습니다 (명백한 주장).
SoftReference<T>
템플릿에서 T
유형을 반환하는 방법을 알 수 없습니다.
나는 SoftReference<T>
에 대해 T
과 U
을 두 개 시도했으나 성공하지 못했습니다.
_template_라는 용어는 Java에서 사용되지 않습니다. _generics_ 및 _type parameters_는 대신에 사용됩니다. – jahroy
정확한 컴파일러 오류 메시지는 무엇입니까? – Bohemian
@jahroy 편집 및 단어 주셔서 감사합니다. 저는 여전히 C++ 배경을 회상하고 있습니다. – Benj