Re: [問題] JAVA創立物件與方法回傳值問題

看板java作者 (痞子軍團團長)時間10年前 (2014/05/10 14:47), 編輯推噓1(102)
留言3則, 1人參與, 最新討論串2/4 (看更多)
※ 引述《iammarsman ( )》之銘言: : new TestServerClass(); // 沒有宣告物件承接新物件 : testServerClass.secondTestMethod(); // 沒有變數承接回傳值 : 以上兩段程式都沒有出現編譯錯誤且可以正常執行, ^^^^^^^^^^^^^^^^^^^^^^^^^^ : 想請問一下這些都是java中所允許的情形嗎? 如果你說的「Java」是單純的「Java 語言規格」 那這個問題,我覺得是自問自答啦 XD 不允許卻可以正常執行,這是黑魔法吧? lol : 在什麼情況下會使用上面兩種撰寫方式呢? : 懇請賜教, 感激不盡! 你的問題都十分... 微妙 我甚至都不知道該怎麼認真回答而不被懷疑是在酸人 (謎之聲:那是因為你太愛酸人 [指]) 基本上我會把你的問題歸類為政策面的問題 也就是語言規範 / 語法允許你這麼作 沒有可不可以的問題,而是適不適合這麼作的問題 也就會變成青菜蘿蔔各有所好、各說各話的狀況 (就像我不懂為什麼有人喜歡 dynamic type language [完全離題]) new 一個 instance 但是卻不 assign 給任何變數 這種情況比較少見 甚至可能在某些人的 coding style 中是錯誤 / 壞味道的來源 因為理論上應該 / 可以改用 static method 來取代...? 至於呼叫一個 method,明明有回傳值但是卻不 assign 給任何變數 這個狀況基本上很常見,甚至你已經用了一堆只是你不知道 XD 尤其是在有設計 exception 的情況下 很多時候你不 care 回傳值、你比較在意炸了什麼 exception 我個人最常用的就是 ArrayList.add() 我甚至不知道為什麼它要有回傳值 source code 當中永遠回傳 true 只能說 Collection.add() 當初設計時應該有其他考量 XD -- 錢鍾書: 說出來的話 http://www.psmonkey.org 比不上不說出來的話 Java 版 cookcomic 版 只影射著說不出來的話 and more...... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.43.104.99 ※ 文章網址: http://www.ptt.cc/bbs/java/M.1399704428.A.F43.html

05/10 14:55, , 1F
ArrayList是因為add()實際上是實作Collection介面吧..
05/10 14:55, 1F

05/10 14:56, , 2F
應該是其他實作可能會有add失敗的可能?
05/10 14:56, 2F

05/10 14:58, , 3F
剛查過,像Set如果有相同元素就會false了XD
05/10 14:58, 3F
文章代碼(AID): #1JRSjiz3 (java)
討論串 (同標題文章)
文章代碼(AID): #1JRSjiz3 (java)