名词解释----对象引用 对象引用指的是什么 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 刚为朋友写的一个说明。不知是不是解决你的问题。我们只能通过(对象的)引用来访问对象譬如,我们声明了一个关于人的类:class Ren { ......}就可以按这个类创建一个对象:Ren ZhangASan = new Ren();new操作符引发一次内存的动态分配,为一新对象分配一块足以容纳类Ren中的所有成员。赋值号=把这块空间的首址赋给名为ZhangASan的引用。最左侧的Ren指明该引用是指向Ren类对象的引用。这个说明比书里对对象创建语句的说明(书里多把那个ZhangASan说成是对象本身)要复杂一点。但是,它是正确的。再看一段代码:Ren ZhangASan = new Ren();Ren ZhangMingMing = ZhangASan;第二句是再创建一个也是指向Ren类对象的引用,名叫ZhangMingMing。把ZhangASan赋给它,意味着使这两个引用指向同一个对象。容易误解的是,把这两个引用看作是同一物。其实,仍然是两个互不相关的引用,只是在现在,它俩指向同一对象。张阿三和张明明都不是某人,只是某人的名字而已。和现实生活一样,我们通过姓名来访问那个人。更不能把它们看成是两个对象。第二个语句没有new操作符,不可能产生新的对象。我们再加两个语句,就可以进一步说明问题了。Ren ZhangASan = new Ren();Ren ZhangMingMing = ZhangASan;Ren ZhangASi = new Ren();ZhangMingMing = ZhangASi;第三句创建了另一个对象和指向它的新的引用ZhangASi(“张阿四”)。第四句使原来的第二个引用ZhangMingMing(“张明明”)和新引用ZhangASi都指向第二个对象。而第一个引用ZhangASan仍然指向第一个对象。这就证明了原来的两个引用ZhangASan和ZhangMingMing不是同一物。由此可见,尽管对象是实实在在的,但是你不能直接访问它。只能通过引用来访问它。引用也是一种变量,说它“变”,是你可以使它现在与对象A关联,等一会与另一对象相关联。因此,在Java里,看不到对象,只有用来访问对象的引用。 jar 访问外部资源问题 线程同步问题 import和package有什么区别呢? 怎么得到系统昨天的时间? 请问用java能否得到操作系统中正在运行的进程列表。 鼠标事件响应问题 在http://java.sun.com中下载哪个程序? 用java做报表 有关Netscape ldap server的问题 一个简单问题,给大家送分 初学java的一个问题,java方法调用时,是传值还是传引用? 引用后一定要为null么?(Java初学者)
我们只能通过(对象的)引用来访问对象
譬如,我们声明了一个关于人的类:
class Ren {
......
}
就可以按这个类创建一个对象:
Ren ZhangASan = new Ren();
new操作符引发一次内存的动态分配,为一新对象分配一块足以容纳类Ren中的所有成员。赋值号=把这块空间的首址赋给名为ZhangASan的引用。最左侧的Ren指明该引用是指向Ren类对象的引用。这个说明比书里对对象创建语句的说明(书里多把那个ZhangASan说成是对象本身)要复杂一点。但是,它是正确的。
再看一段代码:
Ren ZhangASan = new Ren();
Ren ZhangMingMing = ZhangASan;
第二句是再创建一个也是指向Ren类对象的引用,名叫ZhangMingMing。把ZhangASan赋给它,意味着使这两个引用指向同一个对象。容易误解的是,把这两个引用看作是同一物。其实,仍然是两个互不相关的引用,只是在现在,它俩指向同一对象。张阿三和张明明都不是某人,只是某人的名字而已。和现实生活一样,我们通过姓名来访问那个人。
更不能把它们看成是两个对象。第二个语句没有new操作符,不可能产生新的对象。
我们再加两个语句,就可以进一步说明问题了。
Ren ZhangASan = new Ren();
Ren ZhangMingMing = ZhangASan;
Ren ZhangASi = new Ren();
ZhangMingMing = ZhangASi;
第三句创建了另一个对象和指向它的新的引用ZhangASi(“张阿四”)。第四句使原来的第二个引用ZhangMingMing(“张明明”)和新引用ZhangASi都指向第二个对象。而第一个引用ZhangASan仍然指向第一个对象。这就证明了原来的两个引用ZhangASan和ZhangMingMing不是同一物。
由此可见,尽管对象是实实在在的,但是你不能直接访问它。只能通过引用来访问它。引用也是一种变量,说它“变”,是你可以使它现在与对象A关联,等一会与另一对象相关联。
因此,在Java里,看不到对象,只有用来访问对象的引用。