例如:
class Person {
def stuff
}
class Toilet {
public void main(String... args){
Person person = new Person()
person.getStuff() //null, but you get my point
}
}
getStuff()
是否会返回stuff
的副本?还是stuff
本身?
我担心返回的stuff
对象的可修改性。
答案 0 :(得分:3)
Groovy(由Grails使用)返回对象本身,但仅用于对象(def
,Object
,Person
等)。您可以修改此对象。
原语的副本(int
,long
等)。
与Java相同。
答案 1 :(得分:1)
它返回东西本身,除非你在getter中做一个显式拷贝并返回这个副本。 无论如何,Java(以及Groovy)都没有通用的方法来制作一个对象的副本。