java中的对象和引用 小生初学者,还没弄明白什么是对象和引用!希望各位大侠指点…… 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 比如: Button bb=new Button("asa"); 这里的bb指得就是引用,说白了,就是个名字,用这个名字去操纵内存里面的对象块。 new Button()用来创建一个按钮对象并返回该对象的引用,也就是对引用bb的实例化(给其分配内存).其实,引用是放在堆栈里面,而对象则在堆上面创建,在用new创建对象的时候,不但给对象在堆上分配了内存空间,而且也在地址首部创建了一个名字。你暂且把“=”看作赋值,则上面的例子就是把对堆上创建的名字赋给bb.然后用bb去操纵这块内存。再慢慢体会一下。 引用是遥控器,对象是电视机 正如楼上所说 说白了bb存储的就是所开辟内存的地址 操作bb就相当于操作他指向的 内存 在Java中,引用指向一个对象在内存中的位置,本质上它是一种带有很强的完整性和安全性限制的指针。引用变量并不是对象本身,我们只是使用引用变量来指向某个同一类型的对象来实现对对象的使用。一个对象可以被多个引用变量指向,但一个引用变量一次只能指向一个对象。对象的使用是通过一个引用类型的变量来实现,包括引用对象的成员变量和方法,通过运算符“.”可以实现对变量的访问和方法的调用。 分析一下内存你可能比较容易懂。比如Person是类,是一个模板,它在内存里面不会分配空音,直到new一个对象作为这个类的一个实例。Person Liming=new Person;Liming这个变量就是引用,它会占用栈内存的一块地址,地址里面存储的值就是指向堆内存里一个新建的Person对象。也就是说Liming就是个对象的引用。简单理解,liming就是指向一个对象,是Person这个类中一个实例,一个特定的人。 分析一下内存你可能比较容易懂。 比如Person是类,是一个模板,它在内存里面不会分配地址,直到new一个对象作为这个类的一个实例。 Person Liming=new Person; Liming这个变量就是引用,它会占用栈内存的一块地址,地址里面存储的值就是指向堆内存里一个新建的Person对象。也就是说Liming就是个对象的引用。简单理解,liming就是指向一个对象,是Person这个类中一个实例,一个特定的人。 如Integer i=new Integer(1);i分配在栈足,对象分配在堆中.所以,i是一个实例对象,也可以理解为引用,该引用指向的内容位于堆中! hello he = new hello();这里new hello()的作用就是创建对象,he准确的说不能叫对象,他只是一个可以存储对象引用的变量,而引用就是这个对象的地址,当he通过.来访问方法或者成员变量的时候就是通过引用来寻找到对象从而访问的~ 关于类的调用?(新手问题) java 移~~~~ 位~~~ 的问题!看了半天google还是一头雾水 求助高手 关于int转byte的问题 CMPP3.0连接移动网关,版本问题 客户端的socket如何判断服务端已经断开连接 怎么样获得输入文件 的名字? jb的使用问题?谢谢!! 求助:如何在Java程序中启动系统的浏览器?谢谢了!!! 怎样用java写unix上的daemon程序? 做了一个类似QQ表情框,有点问题,请大家看下。。 请教一个监听器的问题
Button bb=new Button("asa");
这里的bb指得就是引用,说白了,就是个名字,用这个名字去操纵内存里面的对象块。 new Button()用来创建一个按钮对象并返回该对象的引用,也就是对引用bb的实例化(给其分配内存).其实,引用是放在堆栈里面,而对象则在堆上面创建,在用new创建对象的时候,不但给对象在堆上分配了内存空间,而且也在地址首部创建了一个名字。你暂且把“=”看作赋值,则上面的例子就是把对堆上创建的名字赋给bb.然后用bb去操纵这块内存。再慢慢体会一下。
引用是遥控器,对象是电视机
引用变量并不是对象本身,我们只是使用引用变量来指向某个同一类型的对象来实现对对象的使用。
一个对象可以被多个引用变量指向,但一个引用变量一次只能指向一个对象。
对象的使用是通过一个引用类型的变量来实现,包括引用对象的成员变量和方法,通过运算符“.”可以实现对变量的访问和方法的调用。
hello he = new hello();
这里new hello()的作用就是创建对象,he准确的说不能叫对象,他只是一个可以存储对象引用的变量,而引用就是这个对象的地址,当he通过.来访问方法或者成员变量的时候就是通过引用来寻找到对象从而访问的~