我試圖找出爲什麼下面的代碼給出錯誤,請任何人都可以解釋。 這裏是一類爲什麼我不能在擴展類中創建一個與內部類名稱相同的對象
package abc;
public class A {
public class B {
}
}
現在,我嘗試創建一個B級
package xyz;
import abc.*;
public class B extends A{
public static void main(String[] args) {
B b = new B(); // this line gives error. Can you please explain
}
}
請考慮B類延伸的是默認包是指
import abc.*;
public class B extends A{
public static void main(String[] args) {
B b = new B(); // this line gives error. Can you please explain
// I am try to create "B" class object which extends A
//.. not the B inner class
}
}
錯誤顯示日食是:「不能包含類型A的封閉實例,必須使用包含類型A的實例來限定分配(egxnew A(),其中x是A的一個實例)」。
請發表您的錯誤。 – Baz 2012-08-02 13:41:01
錯誤究竟是什麼?這裏的類型沒有問題,你可能試圖調用一個不存在的構造函數。 – 2012-08-02 13:41:32
如果你發佈錯誤,它會像「封裝類實例所需」。請參閱我的解答。 – tucuxi 2012-08-02 13:46:50