CompileStatic

允許靜態編譯程式碼。它的位元組碼將更接近 Java,因此具有更好的效能,但某些動態功能將無法使用。

@groovy.transform.CompileStatic
class ListMath {
    def countSize(List<String> strings) {
        strings.collect { it.size() }.sum()
    }
}

assert new ListMath().countSize(["a", "bb", "ccc"]) == 6