簡體   English   中英

如何從groovy覆蓋java方法

[英]How to override a java method from groovy

我有一個groovy類,它能夠將其輸出寫入StringWriter - (通過setStringWriter方法)。

在java中我會使用以下代碼:

filter.setStringWriter(new StringWriter(){
   @Override
   public void write(String string){
       // do something with the string
   }
}); 

對於Groovy,我被告知要使用一個閉包,我已經嘗試了以下但沒有運氣:

def s =  {String line -> print line} as StringWriter
filter.setStringWriter(s)

要么

filter.setStringWriter{String line -> print line}

我該怎么做呢,或者甚至可能嗎?

以下鏈接給出了一個線索,雖然它只提到了接口。

以下適用於Groovy 1.6.1:

def s =  [ write: { String line -> print line} ] as StringWriter
filter.setStringWriter(s)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM