麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

new String創建了幾個對象

2019-11-11 05:13:53
字體:
來源:轉載
供稿:網友

String str = new String(“abc”)  到底創建了幾個對象?

首先String str是定義了一個字符串變量,并未產生對象,=不產生對象,那么只有后面的new String("abc")了。把它拆分成"abc"和new String(),首先在字符串常量池去尋找有沒有"abc"這個字符串,沒有就創建一個“abc”字符串對象在棧中,然后new String把這個字符串對象拷貝一份到堆中,返回這個對象的引用。所以一共產生兩個對象

試問str變量存儲在堆中還是棧中?關鍵點是區分str是成員變量還是局部變量,如果是局部變量在方法體內,它就存儲在棧中,如果是成員變量那么久跟隨成員對象存儲在堆中。比如

class A{String str = new String(“abc”) public void getA(){return str;}}以上變量str存儲在堆中

class A{public void getA(){String str = new String(“abc”) return str;}}以上變量str存儲在棧中

String str = "a"+"b";產生幾個對象?答案是3個,字符串常量區存儲"a","b","ab"三個對象

String str = "a"+new String("b");產生幾個對象?答案是3個,字符串常量區存儲"a","b",堆中存儲new String("b")的對象。

聲明:

只有使用引號包含文本的方式創建的String對象之間使用“+”連接產生的新對象才會被加入字符串池中。對于所有包含new方式新建對象(包括null)的“+”連接表達式,它所產生的新對象都不會被加入字符串池中


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产手机国产手机在线 | 视频一区二区中文字幕 | 成人一区二区在线观看视频 | 黑人一级片视频 | 亚洲成人欧美在线 | 久久精品视频69 | 欧美一级片一区 | 久久综合九色综合久久久精品综合 | 国产成人综合在线观看 | 久久成人综合网 | 亚洲第一激情 | 免费毛片在线 | 久久久久免费精品国产小说色大师 | 国产在线精品一区二区不卡 | 草草视频免费 | 第一区免费在线观看 | 中国字幕av| 国产91一区| 久久久婷婷一区二区三区不卡 | 国产在线91 | 国产成人精品免高潮在线观看 | 羞羞的视频在线观看 | 国产精品视频1区 | 成人短视频在线观看免费 | 欧美一区二区片 | 麻豆传传媒久久久爱 | 欧美a视频 | 在线播放免费播放av片 | 成年人在线免费播放视频 | av在线影片 | lutube成人福利在线观看 | 国产精品成人久久久久a级 av电影在线免费 | 精品久久久久久久久中文字幕 | 激情视频免费看 | 国产激情精品一区二区三区 | 可以看毛片的网址 | 黄色作爱视频 | 日韩欧美激情视频 | 国产高潮好爽好大受不了了 | 欧美成在线视频 | 视频一区二区三区在线 |