如何在Clojure中编写以下类?

时间:2011-04-28 16:47:42

标签: 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”。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:3)

我没有使用Clojure进行广泛的Java互操作,所以这可能是错的,但是如何

(proxy [TouchCommand] []
  (itemTouched [selectedItem]
               (.. (getParent)
                   (navigateTo
                     (UiBasics.)))))