나는 모든 일반 형식 변수가 메서드 "형식 매개 변수 섹션"의 시작 부분에서 일반 정의에서 결정된 상한값으로 바뀌 었음을 알고 있습니다.제네릭 형식 및 할당 문제
이 Deitel 책 사실
에서이다, 모든 유형의 매개 변수는 타입 파라미터 섹션에 지정된 유형 매개 변수의 바인딩 위 소위로 대체됩니다.
그에 따라, 서브 코드가
public static <E extends Number> void A()
{
E x= new Double(2.2);
}
는하지만 컴파일러는 나에게 참이어야가 E에서 컴파일 오류가 X = 새로운 더블 (2.2);인데, 번이 숫자이기 때문에 이것이 반드시 있어야합니다.
나는 캐스팅을 통해 문제를 처리하고 해결하는 방법을 알고 있지만, 왜 이것이 발생하는지 묻습니다.
어떤 오류가 발생합니까? – bmargulies