2012-06-19 2 views

답변

0

작품 :

interface C {} 
class A implements C {} 

public class Test { 

    private static void foo(Class<? extends C> clazz) { 
    } 

    public static void main(String[] args) {   
     foo(A.class); 
    } 
} 

이 아마도 당신이 짧은 게시 할 수 있지만 실패 있는지의완전한 예?

+0

미안 해요, 나는 '확장'을 보았고 C는 클래스라고 가정하고 인터페이스라고 밝혀졌습니다. 자바는 키워드 오버로딩을 멈추고 수퍼 클래스와 같은 위협 인터페이스를 사용할지 어떨지 생각해야한다. – Huckle

+0

@ Huckle : 샘플 코드를 편집 했는데도 여전히 작동한다. 다시 말하지만, 문제를 보여주는 짧지 만 완전한 * 프로그램을 보여주십시오. –

+0

그래, 여기서 무슨 일이 일어나는 지 알 겠어. A.java에는'import C '가 없었습니다. 이클립스는 내가 라인을 변경하기 전까지는 수입이 부족할 때마다 실망하지 않았다. 그런 다음 클래스에서 B를 호출하면 A가 C를 구현하지 않았다는 오류로 나타납니다. – Huckle