最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java直接輸出對(duì)象變成@.....的問(wèn)題及解決

 更新時(shí)間:2023年09月29日 08:26:23   作者:看到我,請(qǐng)讓我去學(xué)習(xí)  
這篇文章主要介紹了Java直接輸出對(duì)象變成@.....的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Java直接輸出對(duì)象變成@.....問(wèn)題

為什么我用System.out.println()輸出一個(gè)對(duì)象會(huì)變成@.......的 

例如 object.student@1d8d30f7

原因在此

(假設(shè)我的對(duì)象名是student s =new student ();)

1.以下代碼就是System.out.println(),中println,Java的底層代碼

 public void println(Object x) {
        String s = String.valueOf(x);

可以發(fā)現(xiàn)出現(xiàn)了個(gè)String.valueOf(x),這個(gè)x此時(shí)就等于s也就等于new student ()

2.valueOf(x)的底層源碼就是下圖

 public static String valueOf(Object obj) {
        return (obj == null) ? "null" : obj.toString();
    }

這個(gè)obj就等于=x=s=new student(),此時(shí)return (obj == null) ? "null" : obj.toString();

運(yùn)用了三元運(yùn)算符,因?yàn)閛bj不等于null,所以直接執(zhí)行了表達(dá)式三,也就是obj.toString()。

3.toString()的底層源碼是

public String toString() {
        return getClass().getName() + "@" + Integer.toHexString(hashCode());
    }

這個(gè)方法里面只有

return getClass().getName() + "@" + Integer.toHexString(hashCode());

所以在你的控制臺(tái)里面出現(xiàn)了   @.....什么的

至于為什么,是因?yàn)樵诶^承里面有個(gè)最終類也就是object,所有的類都直接或者間接繼承自object,你在你的類里面沒(méi)有寫toString,他就會(huì)默認(rèn)執(zhí)行object里面的指定代碼

所以.....在你的類里面加個(gè)toString方法就好了 ,也就是在被實(shí)例化的那個(gè)類,在我這篇文章里面是student

解決辦法

.eclipse的快捷鍵是  shift+alt+s

在student里面  按下 shift+alt+s 倒數(shù)第四個(gè),選擇需要的變量,點(diǎn)擊生成,像下圖一樣,然后就去執(zhí)行下main方法就好了

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

昌吉市| 育儿| 建阳市| 阳春市| 扬州市| 慈利县| 二手房| 明星| 凉山| 宁德市| 常州市| 霍林郭勒市| 凤阳县| 霍州市| 陆川县| 安溪县| 海林市| 红原县| 霸州市| 青冈县| 伊宁市| 东阳市| 兴国县| 沈阳市| 隆林| 鄂尔多斯市| 普陀区| 鄂尔多斯市| 九龙县| 阿拉善盟| 翁牛特旗| 石渠县| 六安市| 临澧县| 天全县| 南皮县| 额尔古纳市| 油尖旺区| 普宁市| 长寿区| 永顺县|