一,數組與內存控制

一,數組的初始化html

        1,數組初始化以後,長度不變,且數組初始化後纔可使用,所謂得初始化,就是爲數組對象得元素分配內存空間,而且指定初始值。java

        2,初始化的兩種方式:靜態初始化,初始化時顯式指定每一個數組元素的初始值,由系統決定數組長度。數組

                                            動態初始化,初始化時,只是指定數組長度,有系統爲數組元素分配初始值。spa

        3,java數組變量時引用類型變量,不是數組自己,它時只想堆內存中的數組對象。指針

例如:htm

        int arr[]對象

        arr=new int[]{1,2,3}blog

        執行int arr[]以後,這是在main()方法棧中定義了一個arr數組變量,是一個引用類型變量,可是並無指向實際的數內存

        組對象,因此此時尚未使用該數組對象。get

        當執行第二句之後,系統會根據咱們制定的元素決定數組的長度,切長度不可變,在堆內存中建立內容。

        全部局部變量都保存在棧內存中,無論是基本類型的變量仍是引用類型的變量,都是存儲在各自的方法棧中,可是引用類型的變量所引用的對象(包括數組,普通的java對象)則老是儲存在堆內存中。

        堆內存中的對象一般不允許直接訪問,爲了訪問堆內存中的對象,一般只能經過引用變量。引用變量其實是一個指針,只要不訪問變量的屬性,或者調用引用變量來調用方法。使用該對象也是不會出現問題的。

http://www.cnblogs.com/hmiinyu/archive/2012/10/22/2732781.html(數組以及引用類型內存分配)

相關文章
相關標籤/搜索