Java有8种基本类型,均可以作为函数的返回类型,除此之外还可以返回特殊类型——类。如下面的代码:
public static ClassA getObject(){
ClassA newObject = new ClassA();
newObject.value+= 10;
return newObject;
}
public ClassA(){
int value = 5;
}
ClassA是一个类,getObject是一个函数,函数的内容是返回一个对象的地址。在这个函数中,由于getObject是无参有返回值的函数,返回对象时返回的参数是对象的地址。因此在getObject这个函数中value的值与主函数中新建的对象的属性值value是不一样的,仅与定义类时的初始值、在getObject中对value进行改变的操作相关(如newObject.value+= 10;)。
在函数返回时,原对象的地址值会被覆盖。