>  Q&A  >  본문

Java 제네릭의 컴파일 문제

소스 코드는 다음과 같으며 아래 프롬프트로 이동합니다. 이 코드는 분명히 컴파일될 수 없습니다.

이유는 한 가지인 것 같아요

으아악

여기의 문자열은 숫자를 상속받을 수 없습니다. 문자열의 하위 클래스가 아닌가요?

그럼 또 다른 질문은 마지막 단락에서 BoundedEcho<T>에 속하는

개체를 전달했는데 여기에 오류가 보고되는 이유는 무엇입니까? new BoundedEcho<Integer>

맞나요? BoundedEcho改为public class BoundedEcho<? extends Number> {...}

소스코드는 여기 으아악 으아악

世界只因有你世界只因有你2736일 전505

모든 응답(1)나는 대답할 것이다

  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-17 10:05:13

    문제는 이 두 문장에 있습니다

    으아악

    인스턴스화할 때 T를 숫자로 선언하고 후속 호출은 BoundedEcho<Number>여야 합니다. 그 이유는 BoundedEcho와 BoundedEcho와 같은 유형이 서로 다른 클래스이고 상속 관계가 없기 때문입니다.

    회신하다
    0
  • 취소회신하다