在Java中不需要考虑内存管理问题,它是自动进行的

解决方案 »

  1.   

    没有办法!
    只能自己实现方法了!
    基本上,
     函数是不占内存的!---多个对象都只有一个函数!
     其他嘛, int,string,Object 等都可以得到所占字节数啊!
    看看 jive 论坛(忘记了是不是这个了),里面有实现的!
      

  2.   

    hoho,欧努力了3天,刚实现!:)等我发出来大家看!
      

  3.   

    java中的对象会自动回收,不需要象C那样要用析构函数,所以不需要知道它占多大内存。
      

  4.   

    知道你是这个目的啊!
    所以对于 对象来说,
    例如,下面的对象吧!
     public class Aa
     {
        int i;
        String abc = " abc ";
        Object  aa  = null;
        
        void setI(int i)
        { this.i=i; }
        
        int getSize()
        {
           return 4+abc.length()+4; 
           // 第一个 4 表示 整数所占的字节
           // 第二个 4 表示 aa 所占的字节!(指针占 4个字节)
        }
     }
    //就是这样啊!
    //你不能认为 getSize(),setI() 这些函数也会占内存啊!---虽然确实会占!
      

  5.   

    首先不同虚拟机的对象大小不同。以sun的jvm为例
    每个对象8个字节,field的大小参考sun规范。每个对象的总大小必须是8的倍数。所以一个Integer的大小是8+4=12个字节,但由于是8的倍数,因此实际是16个字节。
    一个字符串"aaa"的大小是8+4(hascode)+4(char数组的引用)+char数组对象大小
    char数组对象大小是8+4+2*3=24
    因此一共是40个字节。当然如果String中还有其他Field则还要加上。