2009-10-02 4 views
2

다음에 대한 올바른 구문을 찾고 있는데요 :제네릭 클래스에서 여러 클래스를 확장/구현하도록 매개 변수를 요구하도록하려면 어떻게합니까?

public class Foobar<K extends SomeJavaAPIClass and implements Cloneable>{ 

그래서 K가 SomeJavaAPIClass의 일반적인 서브 클래스이고 K가 자신의 clone() 메소드

인 'K'의 Foobars를 가질 수 있습니다.

다른 순열과 함께 <K extends SomeJavaAPIClass, implements Cloneable>을 사용해 보았습니다.

+1

왜 'Cloneable (악의적 인 인터페이스)'을 구현하면 어떨까요? –

답변

9

사용 &<K extends SomeJavaAPIClass, implements Cloneable>을 시도했습니다

:

public class Foobar<K extends SomeJavaAPIClass & Cloneable> { 

일반 와일드 카드에서 "확장"은 "하위 유형입니다"를 의미하므로 클래스 또는 인터페이스에 사용합니다.

3

나는 다음과 같은 유효 생각 :

public class Foobar<K extends SomeJavaAPIClass & Cloneable> { 

은 내가 아는 한 일반 선언에서 두 클래스와 인터페이스에 사용되는 "연장". 다른 사람이 댓글을 달았습니까?

관련 문제