• 数组与内存控制


    注:我已对本文章进行了更新,劳烦移步

    java语言是典型的静态语言,因而,数组也是静态的,即当该数组被初始化之后,该数组的长度是不可变的。
    java 语言的数组变量是引用类型,什么意思呢?意思就是,数组变量并不是数组本身,它只是指堆向内存中的数组对象。如:
    这3个变量以及各自引用的数组在内存中的分配如图:
    对数组变量来说,它并不需要进行所谓的初始化,只是让数组变量指向一个有效的数组对象即可。
    对Java程序来说,所有的引用类型的变量都不需要经过所谓的初始化,需要进行初始化的只是该引用变量所引用的对象
    所有的局部变量都是存放在内存中,不管其是引用类型的变量还是基本类型的变量,都是存储在各自的方法栈区中;但引用类型变量所引用的对象(包括数组、普通的Java对象)则总是存储在内存中。
    对于Java,堆内存中的对象(不管是数组还是普通Java对象)通常不允许直接访问,为了访问堆内存中的对象,通常只能通过引用变量。
    数组变量都是存储在栈内存中的,但数组元素则作为数组对象的一部分被保存在堆内存中,无论它们是基本类型的数组元素还是引用类型的数组元素。


    作者:禅楼望月
    出处:http://www.cnblogs.com/yaoyinglong
    如果,您认为阅读这篇博文让您有些收获,不妨点击一下右下角的【推荐】
    如果,您希望这篇博文也能帮助到其他人,不妨点击一下右边的【分享到…】
    如果,您希望更容易地发现我的新博客,不妨点击一下左下角的【关注我】
    如果,您对我的博客内容感兴趣,请继续关注我的后续博客,我是【禅楼望月】

    本文版权归作者和博客园共有,欢迎转载,但请注明出处,且在文章页面明显位置给出原文连接。

    *\(^o^)/* 请您毫不留情的指出错误和不足,或者发表您的见解(ɔˆ ³(ˆ⌣ˆc)我们共同进步(ง •̀_•́)ง

    ”google 有道  订阅本站到QQ邮箱
  • 相关阅读:
    [ Openstack ] Openstack-Mitaka 高可用之 环境初始化
    [ Openstack ] OpenStack-Mitaka 高可用之 概述
    Swift
    Swift
    报错
    归并排序
    堆排序
    插入排序
    早睡早起身体好
    用于查询的日期类型转换帮助类
  • 原文地址:https://www.cnblogs.com/yaoyinglong/p/4097909.html
Copyright © 2020-2023  润新知