2011-04-28 3 views
4

는 내가 Clojure의에서 다음을 쓰고 싶어,하지만 난 내 인생을 알아낼 수 없습니다 :Clojure에서 다음 클래스를 작성하는 방법은 무엇입니까?

new TouchCommand() { 

    @Override 
    public void itemTouched(TouchMenuItem selectedItem) { 
    } 

내가 시도 :

(reify com.vaadin.touchkit.TouchMenu$TouchCommand 
    (itemTouched [^com.vaadin.touchkit.TouchMenu$TouchMenuItem item])) 

하지만 반환

java.lang.IllegalArgumentException: Can't define method not in interfaces: itemTouched 

"itemTouched"가 인터페이스에 있어도 마찬가지입니다. 누구든지 도와 줄 수 있습니까?

답변

3

내가 지금이 잘못 될 수 Clojure의와 광범위한 자바 상호 운용성을 수행하지만, 방법에 대한

(proxy [TouchCommand] [] 
    (itemTouched [selectedItem] 
       (.. (getParent) 
        (navigateTo 
        (UiBasics.))))) 
하지 않은
관련 문제