는다중 중첩 일반 클래스는 서로 어떻게 참조 할 수 있습니까?
public abstract class ClassA<ClassBType extends ClassB<ClassCType>,ClassCType extends ClassC> {
public void method(ClassBType type) {
type.myClassA = this; //Error. Type mismatch: cannot convert from TestGameMain.ClassA<ClassBType,ClassCType> to TestGameMain.ClassA<TestGameMain.ClassB<ClassCType>,ClassCType>
}
}
public abstract class ClassB<ClassCType extends ClassC> {
ClassA<ClassB<ClassCType>,ClassCType> myClassA;
private void testMethod() {
myClassA.method(this);
}
}
public abstract class ClassC {}
}
이 문제를 해결하는 올바른 방법은 무엇입니까 아래의 코드를 검사?
편집 : 위 코드는 컴파일되지 않았으므로 컴파일했습니다. 를 ClassA의 인스턴스를 얻는 것은 사람을 가지고 있다면 당신이이 동물을 인스턴스화하는 방법에 대한 자세한 내용을 알고 있어야합니다
ClassA<ClassB<ClassCType>, ClassCType> myClassA;
알고 :
, 제네릭의 이러한 사용은 유지 보수가 복잡하다는 단점이 있습니다. 보다 간단한 접근법을 찾아야합니다. –
이것은 유용한 것보다 더 많은 생각의 실험입니다. 이 문제가 발생하여 Eclipse에서 문제를 해결할 방법을 찾지 못했습니다. 실제로 더 이상 사용하지 않습니다. –