簡體   English   中英

類java中的靜態變量

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM