[英]Declaration/Initialization and memory assignment
簡短:何時在聲明或初始化時分配內存?
長 int x;
:將int x;
占用與int z = 10;
相同的內存int z = 10;
。
對於包含更多數據的自定義對象,這也將如何工作。 假設我有這個對象:
public class Factor
{
private String name;
private int value;
private int time;
private double x;
private double y;
private double z;
private double h;
public Factor(String name, int value, int time)
{
this.name = name;
this.value = value;
this.time = time;
}
}
然后用以下代碼初始化它:
Factor f = new Factor("Name", 10, 10);
x,y,z,h (雙打)是否占用內存? 任何?
這可能是一個愚蠢的問題,但只是谷歌搜索它從來沒有給我答案,我真的需要這個來優化我的用於大型數組的多構造對象。
據我了解,聲明說明了變量的名稱和類型。
調用構造函數時會發生分配和初始化。
當然,雙打占用內存:每雙打占用8個字節。 這是64位IEEE浮點數。
如果您不提供初始值,則將其設置為0.0。
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html
您的Factor對象很有趣。 名稱可以為null還是空白? 如果不是,則應防止在構造函數中將其設置為null或空白。
時間可以是負數嗎? 在我的物理學中,這通常是一個連續變量。 什么是單位-秒,兩周?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.