• 呵呵
    2019-10-21
    System.out.println(对象名);
    输出的是值吗.......我的理解是输出的应该是地址啊,给我整蒙了

    作者回复: 简单来说,输出的是个string,什么string呢,这个引用调用toString方法返回的那个String。

    也就是利用这个对象名操作对象,调用其toString方法,然后那这个方法返回的string内容输出出来。

    当然,调用方法什么的,是在println这个方法的代码里完成的

    
     3
  • 广工大嫖客
    2019-11-20
    m1=m5 . m1和m5的地址应该是一样的吧,都是指向m5的堆内存地址。

    作者回复: 这里有三个地址:m5自己的地址,m5地址里的值,也就是某个对象的地址,还有m1的地址。

    m1和m5的地址是不变的,也不会变。变的是它们的值。也就是地址对应的值。赋值完成后,m1和m5的值是一样的了,都是m5的值存储的那个对应的地址的对象(也就是m5指向的对象)

    
     1
  • Geek_3b9346
    2020-02-10
    终于理解什么是引用了,之前只是知道而已。

    作者回复:
    后面还会说什么是对象,加油哦~

    
    
  • 李章鱼
    2020-01-29
    x64的电脑为什么打印出来的地址是32位呢?

    作者回复: 开启了引用压缩会把引用压缩至32位。这样会节省很多内存空间。在细节一点,对象占用的空间是八字节对齐的,所以后面三位都是0,这样虽然引用压缩为八字节,但是实际可以用的空间有32g

    
    
我们在线,来聊聊吧