[英]Static variable in class java
我想問一下,類中的靜態變量是否會為初始化類添加額外的內存。
可以說我有這樣一個類:
public class Sample{
public static String NAME[] = {"1", "2", "3", "4"};
private int id;
private String uuid;
private String name;
public void setUuidString() {
UUID uuid = UUID.randomUUID();
this.uuid = uuid.toString();
}
public void setName(String name) {
this.name = name;
}
public void setCustomUuid(String uuid) {
this.uuid = uuid;
}
public void setId(int id) {
this.id = id;
}
public int getId() {
return id;
}
public String getUuid() {
return uuid;
}
public String getName() {
return name;
}
}
我創建Sample類多次初始化它並添加到Sample類數組中靜態變量是否為類增加了額外的內存,或者它只在靜態時才獲得一個內存位置?
由於static
變量在程序執行開始時被初始化,因此為變量留出了內存。 由於變量是static
因此它屬於類而不是類的實例。 因此,對於您創建的每個實例,它都不會使用額外的內存。
對於static
變量,變量的單個實例在類的所有實例中共享,盡管您不需要類的實例來訪問變量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.