我开始研究Groovy,对于如何定义类参数我有一些复杂的感觉.默认情况下,它们包括getter和setter,但是如果我不想拥有setter呢?限制为仅允许获取属性值的方法是什么?在C#中可以这样做:
public double Hours
{
get { return seconds / 3600; }
}
Run Code Online (Sandbox Code Playgroud)
如果我没错的话.
如果将属性声明为final,则不会创建setter.
或者,如果您声明自己的私有/受保护的setter,则不会创建公共的setter.
所以,如你的例子:
Integer hours
private void setHours(Integer hours) {}
Run Code Online (Sandbox Code Playgroud)
要么:
final Integer hours
Run Code Online (Sandbox Code Playgroud)