java中为对象返回一个引用

来源:百度知道 编辑:UC知道 时间:2024/06/14 18:03:23
我在看书是看到了关于new的作用,其中有一条是为对象返回一个引用,不懂,希望达人能用例子讲解。

将一个对象的引用指向这个对象的实例,然后用对象的这个引用来操作类的实例。
创建一个文件,文件名Test.java
然后输入以下内容

class test{
public int i=0;
}
//test类有了那么怎么样操作这个类呢,先要创建对象,并让一个引用指向这个实例对象
public class Test{

public static void main(String[] s){
test t=new test();
//这时new test();就得到了test这个类实例的引用了。
//然后操作这个类

System.out.println(t.i);
}
}

例:A a = new A();
就是new出个内存空间,并把地址给a
a指向的是new出来的空间
同理如:B b = a 则是a把他引用的地址复制给b
b和a是指向的是同一内存空间

返回的引用,你不用理解这个引用是到底是什么含义.你只须了解,通过这个引用你可以操作你所声明的对象的一切,也可以说是指针吧,反正我也没看出跟指针有什么不同.虽然说java里是没有指针的,只因为这里吧

你要明白堆和栈的概念。
new的东西一般是存放在堆里面, new以后就在栈里面用了一个指针指向了堆。

例如MyClass a = new MyClass();其实类似C的指针。new MyClass();在内存中开辟一块空间。名为a的对象,它指向这个空间的地址。如果再有MyClass b = a;
那么b也只想刚才的那块空间地址。所以a,b都是引用

ClassA a = new ClassA();
a被赋值为一个新的ClassA的对象的引用