zoukankan      html  css  js  c++  java
  • java内存占用问题(一)

    Nocturne 2012-12-24

    java数组内存占用问题.

    30

    Contact[] ca = new Contact[10];

      while(x<10){

        ca[x]=new Contact();

        x++;

      }
    Contact refc;
    while(x<10){
        refc=new Contact();
        x++;

    }
    哪条比较好?哪条内存用的比较少?为什么?

    满意答案

    €◈亽☢.☣亼№ 13级 2012-12-24

    下面这种只有一个变量的占内存少
    上面的数组,在你开始循环之前,必须先分配10个Contact类型的变量空间出来,
    但是下面那样做只是用了1个Contact类型空间

    满意答案

    JAVA中国 中级团 合作回答者:1人 2012-12-25

    第一段代码等于:
    Contact ca1=new Contact();
    Contact ca2=new Contact();
    Contact ca3=new Contact();
    Contact ca4=new Contact();
    Contact ca5=new Contact();
    Contact ca6=new Contact();
    Contact ca7=new Contact();
    Contact ca8=new Contact();
    Contact ca9=new Contact();
    Contact ca10=new Contact();
    第二段代码等于:
    Contact ca=new Contact(); ca=new Contact(); 
    ca=new Contact();
    ca=new Contact();
    ca=new Contact();
    ca=new Contact();
    ca=new Contact();
    ca=new Contact();
    ca=new Contact();
    ca=new Contact();
    第一段是给10个对象创建了10个不同的实例,他们占用不同的内存区域.
    第二段是给1个对象重复创建10次实例,新的覆盖旧的.始终是只占用一块内存.

  • 相关阅读:
    UDP最大传输字节
    [bzoj3994] [SDOI2015]约数个数和
    [bzoj3529] [Sdoi2014]数表
    [bzoj3309] DZY Loves Math
    [bzoj2693] jzptab
    [bzoj4407] 于神之怒加强版
    [bzoj3688] 折线统计
    [bzoj2301] [HAOI2011]Problem b
    [bzoj2820] YY的GCD
    [bzoj4559] [JLoi2016]成绩比较
  • 原文地址:https://www.cnblogs.com/langlove/p/3377225.html
Copyright © 2011-2022 走看看