Re: [問題] 對java的一些疑問...
※ 引述《WPC001 (突然覺得自己是孤獨的...)》之銘言:
: OK... 一些概念大至澄清了, 但又有新的疑問
: 再重複一次, 看看觀念是否有誤會到
: 1. int / double 會 casting成Int / Double的物件, 然後
: int varA = 5;
: double varB = 1.0;
: Object o1 = varA;
: Object o2 = varB;
: 這樣是OK的?
OK 的
: 2. Java並非全是物件/類別, 也分成 primitive 和 reference type
: 那 varA.ToString()是...? 我該稱ToString()為"方法"?
其實這個應該是以 JDK5 入門的人會混淆的地方.
以前在 JDK 1.0 至 JDK 1.4 年代, 你的 example,
和 varA.toString() 是不合法的 (留意是 toString()
不是 ToString(), Java 的 convention 是 method name
小草開頭)
以前你的例子要這樣寫
int varA = 5;
Object o1 = new Integer(varA);
只是 autoboxing/unboxing 把上面的 new Integer()
部份自動幫你完成而已.
varA.toString() 則是做了:
new Integer(varA).toString();
: 3. Java既然不支援operator overloading,
: 那String + int / String + String怎麼去實做出來的?
: (還是語言就是這樣?)
: ---> 看別人的回文, 說明String就是Java裡的一個特殊型別... (對嗎?)
不是以 customized operator overloading 的形式實作.
應該算是 language 層面做了我之前說的 overloaded operator
的 "效果" 而已.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.238.156.189
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 10 之 12 篇):