类所占内存大小的问题---顶者有分 class A{}c++中:sizeof(A)=1//为什么是1个字节?在c++中,通过sizeof(A)可以得到类A在内存中所占大小.问题一:在java中通过什么方法可以得到A类在内存中所占大小。问题二:在java中有没有内存对齐?问题三:能详细解释一下java中类属性,方法,抽象方法等所占的内存空间么?希望高手详细解答。谢谢~~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 基本可以这么理解吧 Java与内存绝缘... 1.System下面 好像有个freeMemery()方法,可以得到空闲内存,然后再创建A前后调用,2者相减2.这个没听说过3.属性如果是实例的,那么它在对象所占的空间里面,也就是在堆,方法在调用栈以上是自己理解,有不足之处希望高手指点,谢谢 问题一:在java中通过什么方法可以得到A类在内存中所占大小。Runtime类中提供了一些获取内存量的方法,但是无法确定一个类占用的内存大小。问题二:在java中有没有内存对齐?这不是java的问题了吧,看jvm的实现。问题三:能详细解释一下java中类属性,方法,抽象方法等所占的内存空间么? 方法有专门的方法区,static属性在方法区中安排空间,非static自然作为对象的一部分在堆中了。 java没有必要以这种思路来学习吧。 这些问题我也不懂,但是觉得楼主肯定是从C++过来的,JAVA不是太注重这些概念的 1. 目前没发现有 API 能做到这个,因为 Java 的 99% 的应用中根本用不到这个功能。2. 要看 JVM 的具体实现(不是只一个 Sun 的 JVM),不同 JVM 的处理方式或许不同。3. 同 1 这些信息对你使用 Java 编程没什么帮助。 我只知道A a = new A();a只是内存的一个引用,A具体的内容在堆空间学习^^…… java中类是不占空间的,只有你 new 一个实例的时候才会为其分配内存空间。 做java的 好象不需要考虑内存分配情况.jvm都帮我们做好这些事了. 用 Runtime类freeMemery()方法 在new这个类前后都计算下当前内存, 两个数减下 就能得到那个类对象的 大概内存。 java的目标是让开发人员不再为c++中那些东西费心,全都一样我们当初就学c++了 两个语言内存管理方式不同:c++由开发人员管理分配和释放,java是虚拟机管理。所以使用开发方式也不同。 1.System下面 好像有个freeMemery()方法,可以得到空闲内存,然后再创建A前后调用,2者相减 2.这个没听说过 3.属性如果是实例的,那么它在对象所占的空间里面,也就是在堆,方法在调用栈 以上是自己理解,有不足之处希望高手指点,谢谢 这个问题怎么还有人再回复啊,呵呵java开发99%不用考虑lz的问题 ClassLoader在defineclass时按byte[]读的,不知道是不是类大小=.class文件大小,没太研究过 内部匿名类使用外部成员变量,外部成员变量要定义为final? 算术运算符的用法 java聊天记录 引用调用问题 有点晕 麻烦各位高手给指点下!! 请教各位一个关于数据库的问题。 安装了JDK,有动画的网页打开后就没有响应,需按照ctrl+ALT+DEL??? 哪里有java常用算法图像处理的类库? 在哪里可以上载到jbuilder最新版? 我的string 输入格式应为“yyyy/mm/dd hh:mm:ss",我怎么判断该string是否合法? 小白求教!双向队列操作有问题 java引用数组二分法排序问题 高人们帮忙分析一下这段代码哪里出错了!!!
2.这个没听说过
3.属性如果是实例的,那么它在对象所占的空间里面,也就是在堆,方法在调用栈以上是自己理解,有不足之处希望高手指点,谢谢
问题一:在java中通过什么方法可以得到A类在内存中所占大小。
Runtime类中提供了一些获取内存量的方法,但是无法确定一个类占用的内存大小。
问题二:在java中有没有内存对齐?
这不是java的问题了吧,看jvm的实现。
问题三:能详细解释一下java中类属性,方法,抽象方法等所占的内存空间么?
方法有专门的方法区,static属性在方法区中安排空间,非static自然作为对象的一部分在堆中了。
1. 目前没发现有 API 能做到这个,因为 Java 的 99% 的应用中根本用不到这个功能。
2. 要看 JVM 的具体实现(不是只一个 Sun 的 JVM),不同 JVM 的处理方式或许不同。
3. 同 1 这些信息对你使用 Java 编程没什么帮助。
a只是内存的一个引用,A具体的内容在堆空间
学习^^……
2.这个没听说过
3.属性如果是实例的,那么它在对象所占的空间里面,也就是在堆,方法在调用栈 以上是自己理解,有不足之处希望高手指点,谢谢
java开发99%不用考虑lz的问题