질문:
Java에서 "extends T"가 왜 필요한가요? 유형 매개변수 범위 정의는 허용되지만 "구현 T"는 허용되지 않습니까?
예를 들어 다음 코드는 금지됩니다.
<code class="java">public interface C {} public class A<B implements C> {}</code>
이 코드는 유효하지만:
<code class="java">public class A<B extends C> {}</code>
답변:
의미상 일반 제약 조건 언어 내에서는 "확장"과 "구현" 사이에 구분이 없습니다. 제약 가능성은 상속 방향이나 할당 호환성을 반영하여 "extends" 및 "super"로 제한됩니다.
잘못된 코드 예제의 경우 "implements"를 사용하여 유형 매개변수 B에 대한 제약 조건을 정의하려고 시도합니다. 그러나 "implements"는 유효한 제약 조건 유형이 아니므로 허용되지 않습니다.
위 내용은 Java에서 유형 매개변수 경계에는 \'extends T\'가 허용되지만 \'implements T\'는 허용되지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!