执行程序后的int,float变量是什么

时间:2010-09-30 09:37:45

标签: java memory

通常,对于as对象,java会在不再需要时回收对象占用的内存。但与此同时,我们使用的是int,float和double数据类型,这些类型由java语言本身在内部定义。不管何时不再需要该数据类型的内存怎么样?

请给我回复......

Saravanan.P

3 个答案:

答案 0 :(得分:3)

如果它们是本地方法变量,则在栈中分配基元(如int,float等),如果它们是成员变量(即类的字段),则在堆中分配。只有堆被垃圾收集。

答案 1 :(得分:3)

只要这些变量不再可访问,Java就会从内存中删除所有变量。换句话说,一旦你离开它们被声明的块,内置的原始数据类型就不会消耗内存。

不同原始数据类型的内存使用情况为:

byte: 8 bit
short: 16 bit
int: 32 bit
long: 64 bit
float: 32 bit
double: 64 bit
boolean: 1 bit (it represents one bit, but can consume up to a byte)
char: 16 bit

答案 2 :(得分:0)

字段和静态变量初始化为0.必须显式初始化局部变量,否则编译器将报告错误。