书上总是说s是引用,一直不明白这个引用到底是个什么玩意,对引用的说法一直感觉是很虚。我按我自己的理解说的看下,高手帮我看下对不对。
String s这句定义了一个字符串对象,s应该也是个对象吧?这个对象其实是个指向String字符串实例的指针,new String("Hello")这句实例化了一个Hello字符串实例,假设Hello字符串实例在堆中的内存地址是0x001122,那么变量s中应该存放的就是这个地址0x001122吧?
第二个问题是s是存放在堆中还是栈中?按我把s理解为一个字符串对象来说,s应该是存放在堆中,不知对不?
第三个问题是s这个对象是什么时候分配内存空间的?String s这句并没有使s在内存中分配空间吧?直到把new的字符串实例赋给s的时候,s才分配内存空间吧?最后个问题是CSDN除了回答别人的问题得分外,还能怎么得分?我问了几个问题后就没分了,以后再有问题怎么办呢?再注册ID?
String s这句定义了一个字符串对象,s应该也是个对象吧?这个对象其实是个指向String字符串实例的指针,new String("Hello")这句实例化了一个Hello字符串实例,假设Hello字符串实例在堆中的内存地址是0x001122,那么变量s中应该存放的就是这个地址0x001122吧?
第二个问题是s是存放在堆中还是栈中?按我把s理解为一个字符串对象来说,s应该是存放在堆中,不知对不?
第三个问题是s这个对象是什么时候分配内存空间的?String s这句并没有使s在内存中分配空间吧?直到把new的字符串实例赋给s的时候,s才分配内存空间吧?最后个问题是CSDN除了回答别人的问题得分外,还能怎么得分?我问了几个问题后就没分了,以后再有问题怎么办呢?再注册ID?
你的爸爸妈妈把你实例化了,
并给你取了个名字叫"wesnow"
wesnow就是引用,你就是那个wesnow指向的对象.