请教甘草,火龙果,还有牛人来告诉我! 那我又请教如果 int a=0;的啊是引用或者是变量的话?那要是实例化一个基本类型呢?如何实例化,实例化后和上面的有区别吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 疯了Integer a = new Integer(10);不就完了么 int a = 0;a是一个变量。用C语言描述,无非就是struct Variable{ char* name; union { int ivalue; double dvalue; bool bvalue; };};*value保存了变量的值。在Java语言中算不得对象。Integer a = new Integer(10); 这里a依然是变量,但是指向了一个对象。你可以看成是:struct Variable{ char* name; union { int ivalue; double dvalue; bool bvalue; java.lang.Object* p;//NOTICe HerE!. };};这个p会指向Integer对象。这个就是JVM里面一个变量的实现示意。 在Java虚拟机中,基本数据类型的变量的值是存储在栈中的。而对象的存储分为2个部分,一个是堆中存储对象真正的内容,而把这些内容的地址存储在栈中。所以两个对象,例如obj1 == obj2进行比较,实际比较的是这两个对象存储在栈中的内容,也就是内存地址。 那要是实例化一个基本类型呢?------------------------------回lz,Java中的8种基本类型不是对象,没有所谓实例化过程.而8中基本类型的包装类,则和String类情况相同. 对于一个类的构造方法,一般小括号都带有一个参数,那么这个参数在内存中的解释是什么?用途是什么? lucene是什么东西 请教各位高手一个编程题 复合查询的sql问题! java代码怎么向xml文件中添加多个注释? 高分求救,如何动态引入一个jar文件 CallableStatement 应用求教 javaIO流复制文件 IO读取文本文件输出到控制台的问题 怎么解决A java exception has occurred,求救求救.......... 还是概念不清楚,望牛人路过此处一解! 修正下前面的小问题
Integer a = new Integer(10);
不就完了么
a是一个变量。用C语言描述,无非就是
struct Variable
{
char* name;
union {
int ivalue;
double dvalue;
bool bvalue;
};
};*value保存了变量的值。在Java语言中算不得对象。
Integer a = new Integer(10);
这里a依然是变量,但是指向了一个对象。你可以看成是:
struct Variable
{
char* name;
union {
int ivalue;
double dvalue;
bool bvalue;
java.lang.Object* p;//NOTICe HerE!.
};
};这个p会指向Integer对象。这个就是JVM里面一个变量的实现示意。
而对象的存储分为2个部分,一个是堆中存储对象真正的内容,而把这些内容的地址存储在栈中。
所以两个对象,例如obj1 == obj2进行比较,实际比较的是这两个对象存储在栈中的内容,也就是内存地址。
而8中基本类型的包装类,则和String类情况相同.