當調用一個特定的方法時,我讀到Wide和Box是首選,爲什麼不是Box和Wide。任何人都可以用一個小例子來解釋我爲什麼。爲什麼編譯器會嘗試Wide和Box爲什麼不是Box和Wide?
2
A
回答
7
加寬:呼叫具有較窄參數類型的方法。
public class Test {
static void doIt(long l) { }
public static void main(String[] args) {
int i = 1;
doIt(i); // OK: int i is widened to long
}
}
拳擊:調用一個方法,該方法需要帶有基本參數的包裝類型。
public class Test {
static void doIt(Integer i) { }
public static void main(String[] args) {
int i = 1;
doIt(i); // OK: int i is boxed to Integer
}
}
加寬,然後拳擊:不起作用。
public class Test {
static void doIt(Long l) { }
public static void main(String[] args) {
int i = 1;
doIt(i); // FAILS. Cannot widen int to long and then box to Long
}
}
拳擊,然後加寬:只適用於擴大到超類型。
public class Test {
static void doIt(Number n) { }
static void go(Long l) { }
public static void main(String[] args) {
int i = 1;
doIt(i); // OK. i is boxed to Integer, and Number is a supertype of Integer
go(i); // FAILS: Long is not a supertype of Integer
}
}
2
答案很簡單:您只可以拓寬元。因此,編譯器必須在加載之前加寬。
0
相關問題
- 1. 爲什麼Firefox忽略-moz-box-sizing和box-sizing?
- 2. 爲什麼在Chrome和Firefox中不會覆蓋-webkit-box-flex?
- 3. Box和UnBox是什麼意思?
- 4. QCombo Box爲什麼不起作用?
- 5. 使用box關鍵字和Box :: new之間有什麼區別?
- 6. CSS中的border-box和content-box有什麼區別?
- 7. 嵌入式Facebook Like-Box不會讓我風格。爲什麼?
- 8. 爲什麼Box/Option在LiftWeb/Scala中不是Exception?
- 9. 爲什麼在css box modell中100%寬度不是100%?
- 10. 在WP7.8上使用Wide Tiles的步驟是什麼?
- 11. 爲什麼box-sizing:border-box仍然顯示寬度爲0px的邊框?
- 12. Flexbox:-webkit-box; -moz-box; -ms-flexbox; &-webkit-flex;他們是什麼?
- 13. 這是爲什麼編譯和發生了什麼?
- 14. box-shadow - 只得到邊框底部而不是右邊和底部 - 爲什麼?
- 15. 爲什麼使用css3-mediaqueries.js時,我的100%寬元素變爲30000px + wide?
- 16. VB.net界面不會編譯,爲什麼?
- 17. 什麼是IE的Box模型?
- 18. 爲什麼編譯器不會拋出編譯錯誤?
- 19. SASS:爲什麼phpsass會刪除css屬性-webkit-box?
- 20. 爲什麼不編譯?
- 21. 爲什麼不能編譯?
- 22. `this.type`:爲什麼不編譯?
- 23. 爲什麼不編譯?
- 24. 爲什麼不編譯?
- 25. 爲什麼不能編譯?
- 26. 爲什麼不編譯?
- 27. 爲什麼不能編譯?
- 28. 爲什麼不編譯?
- 29. Django Admin get_fieldsets不能用類extrapretty和wide
- 30. 爲什麼不編譯編譯錯誤?
沒有任何語境,我們沒有希望回答這個問題。什麼是「寬」和「盒」?如果你能給出一個你認爲它意味着什麼的小例子,那真的會有所幫助。 – 2010-01-25 16:23:46
+1模糊 – willcodejavaforfood 2010-01-25 16:26:00
我非常肯定,當涉及到Java時,加寬和拳擊是衆所周知的術語。詮釋爲長會擴大,詮釋整數將拳擊。我覺得向網站上聲譽最高的人解釋這一點非常荒謬。 – Powerlord 2010-01-25 16:42:37