當我們像下面電話: -當使用new操作符調用堆中的Class()時發生多個調用時會發生什麼?
class Class{
int x;
public Class(int a){
x = a;
}
public void display(){
System.out.println(x);
}
}
而且在main方法,然後我們使用類的對象,以顯示數據: -
new Class(5).display(); // object 1
new Class(7).display(); // object 2
現在,我的問題是: -
我從對象1和對象2中表示的內容是否相等,或者 是不同的(根據堆中的內存位置)?是否在堆中創建兩個單獨的 內存位置(動態內存分配器)或 是否將使用同一對象(堆中的內存位置)?
我很久以來就有這種困惑。另外我只是Java中的noob。
請詳細說明使用new
呼叫的堆段/動態內存分配給Class對象。
你的類被稱爲'A'時間,但你創建'新Class'? – Bubletan
你的代碼不太可能編譯,因爲你有大寫'Class',實際的類名是'A',而不是'Class'。你能否使用編譯器檢查你的代碼,然後編輯提交工作代碼的問題? –
@ TagirValeev-對不起,編輯了一下。那個錯誤!但是,我希望大家清楚大家的想法! – asad