autoboxing

    0熱度

    2回答

    我有一個Canvas子類對象,我試圖添加,以及一些其他Canvas子類,JLayeredPane。在JLayeredPane的文檔中,圖層以整數形式給出,例如, layeredPane.add(child, new Integer(0)); 但是,當我使用Integer作爲圖層時,出現某種運行時錯誤。 (我真的不能告訴這個錯誤是什麼,因爲我的IDE一直抱怨的搖擺庫缺少來源)。奇怪的是,當我用以

    1熱度

    3回答

    是不是很昂貴,它更好地避免它? 從this Java教程: public class ValueOfDemo { public static void main(String[] args) { // this program requires two // arguments on the command line if (args.length

    4熱度

    3回答

    下編譯沒有任何問題 boolean flag = true; Boolean flagObj = flag; 現在成像以下情形 interface ITest{ Boolean getStatus(); } class TestImpl implements ITest{ public boolean getStatus(){ // Compile error

    15熱度

    1回答

    我是高級解決方案架構師,但是我最近偶然發現讓我停下來思考一個問題... 對我來說,下面的代碼應該總是觸發一個錯誤,但當我的一位同事問我爲什麼Eclipse沒有顯示它時,我無法回答任何問題。 class A { public static void main(String... args) { System.out.println(new Object() == 0);

    5熱度

    1回答

    假設有下面的代碼: @SuppressWarnings("unchecked") public static <T> T implicitCaster(Class<T> cls, Object o) { return (T) o; } public static <T> T reflectionCaster(Class<T> cls, Object o) { retur

    21熱度

    3回答

    有什麼辦法可以爲我創建的類使用自動裝箱嗎?例如,我有這個Number的子類。 public class UnsignedInteger extends Number { int n; public UnsignedInteger(int n) { if(n >= 0) this.n = n; else throw new I

    1熱度

    2回答

    請你能幫我理解爲什麼第一次調用testVargArgsAutoboxingPriority的編譯失敗了嗎? 在第二呼叫編譯器的情況下,能夠選擇由寧願原語(第一個參數)適當的方法的對象,但編譯器的可變參數的參數添加後不能進行選擇的任何更多。 失敗消息是 \jdk1.6.0_45\bin\javac.exe ocjp6/AutoBoxingOldStyleVarargsPriority.java o

    6熱度

    3回答

    以下(Java)代碼是否合法? class Test { Object foo() {return "";} boolean bar() {return foo() == true;} } 它不會針對JDK 6進行編譯,但在7+上看起來不錯。規範改變了嗎?是一個錯誤修復?我一直在討論http://bugs.eclipse.org/bugs/show_bug.cgi?id=

    0熱度

    6回答

    AFAIK當Java自動將基元類型轉換爲包裝類對象而不是稱爲自動裝箱時,因爲原語被裝箱到包裝類中。 所以是 int test = 3; String str = String.valueOf(test); 算作自動裝箱? 請問的理由? 我最近遇到了this的問題。我認爲這是java 5中引入的自動裝箱的原因(不存在於Java 4中)。

    3熱度

    2回答

    我想知道這兩者之間的區別: Integer I = 30; // is it autoboxing? Integer I = new Integer(30); // I know it is autoboxing