zoukankan      html  css  js  c++  java
  • Java的数组与内存控制

    1     数组基础

       数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。其中,每一个数据称作一个数组元素(item),每个数组元素可以通过一个下标/索引来(index)访问它们.

    1. 数组长度是确定。数组一旦申请完空间,长度不能发生变化,用length属性访问。
    2. 数组的元素都是同一数据类型。
    3. 数组是有序的 。每个元素通过下标/索引标记,索引从0开始。

     2.内存空间分类    

                   内存分为两类:

                      栈(stack)内存:基本数据类型分配在栈内存,栈内存空间不需要开发者回收,系统会自动回收。栈空间占整个内存空间的比例较小

                      堆(heap)内存:引用数据类型分配在堆内存,堆内存一定要开发者通过new 来申请,开发者申请的内存使用完成后一定要回收。jvm中有专门的垃圾回收机制(gc)回收使用完的堆内存。堆空间占整个内存空间的比例较大。

     3.数组初始化   

    • 静态初始化 : 初始化时由程序员指定每个数组元素的初始值,有系统决定数组长度
    • 动态初始化: 初始化时程序员只指定数值长度,由系统微数组元素分配初始值
    • 注意:数组,一旦初始化完成,该长度不可以变
    • 当char 没有初始化 ,系统自动分配初始化 “u0000”
      • 引用变量本质上只是一个指针,只要程序通过应用变量访问属性,或者通过引用变量来调用方法,该引用变量将会由他所引用的对象代替。
  • 相关阅读:
    httpd sshd firewalld 服务后面的d的意思
    js parse_url 引发的
    python的shutil模块
    ubuntu18.04 LTS上安装并使用nvm管理node版本
    【ZIP】打包过滤指定目录和文件
    numpy中的reshape中参数为-1
    机器学习python常用模块
    Python3使运行暂停的方法
    thrift
    一个账号只能在一处登陆,不是单点登陆。
  • 原文地址:https://www.cnblogs.com/dedema/p/10720313.html
Copyright © 2011-2022 走看看