我是終于理解了啊。。關于課堂作業的S3 == S4的問題
前面都沒有什么說的,主要是覺得S3和S4的內存地址為什么不等沒有理解?,F在我就說說我的理解,當然最開始還是要先理解常量池和堆內存到底是怎么回事。。
看字面意思,我始終覺得S3和S4不是都存的兩個常量么,結果突然醒悟,tm的,原來S1是一個變量,當然最終是要把S3和S4的內存地址不同了。。
普及一下S1是將字符串存在常量池中,所以它的地址是常量池給的。同樣S2也是常量池給的地址,地址都是字符串常量"imooc"的地址,所以s1和s2的地址是一樣的。。
然而s3是一個常量加上一個變量,因此是存在堆內存中,這個地址是堆內存新給s3的。
同理,s4的地址也是堆內存給他的。。因此s3和s4的內存地址是不一樣的
2016-01-19
理解比較透徹,贊一個