java中引用变量是获得对象地址吗

例如:
Dog a=new Dog();

引用变量a的作用是获得new Dog()所创建对象的位置或者说是地址吗

图片说明
希望可以帮到你

只能说作用相当于地址。因为java程序的引用是jvm维护的,不一定和内存地址挂钩。

a是Dog对象的引用变量,你可以理解成指针(虽然java里面没有指针的概念)。通过a能找到dog对象在内存中所在的位置

可以这么理解,赋值操作就是把一个变量和某个值关联起来,楼上除了万恶的机器人之外,说的都对。

Java一本书上的原文:a对象被创建出来时,就是一个对象的引用,这个引用在内存中为对象分配了存储空间。

java 中很多对象复制也是引用地址直接赋值的!需要注意深复制和浅复制。

List<A> list = new ArrayList<A>();
A obj1 = new A();
obj1.name = "小米";
list.add(obj1);
obj1.name = "小新";
list.add(obj1);
这个结果就是,list中存在两个小新。小米没了。