java : 可以通俗的解释java中的对对象的引用么? 最好以this为例。
5个回答
展开全部
Vehicle m;
m=new Vehicle()
m就是栈空间的一个地址,new Vehicle()就是这个对象了,这个对象放在一个地方,这个地方就要告诉别人,别人才能用,这个地址就装在m里面。别管什么Vehicle定义的m,这些都是欺骗编译器的,只是一些规范,比如哪天心情不好,弄个编译器,定义一个int m,来装new Vehicle()也是可以的,如果m的空间不够放地址的话,就会出现截断处理,这又是内存混乱的问题了,所以编译器才有那些规范嘛,什么对错,机器知道个p。this嘛,就是在new Vehicle()这个对象里面,有一个小段空间放的和m里面的值一样。纯属自己理解,有问题的话请担待
m=new Vehicle()
m就是栈空间的一个地址,new Vehicle()就是这个对象了,这个对象放在一个地方,这个地方就要告诉别人,别人才能用,这个地址就装在m里面。别管什么Vehicle定义的m,这些都是欺骗编译器的,只是一些规范,比如哪天心情不好,弄个编译器,定义一个int m,来装new Vehicle()也是可以的,如果m的空间不够放地址的话,就会出现截断处理,这又是内存混乱的问题了,所以编译器才有那些规范嘛,什么对错,机器知道个p。this嘛,就是在new Vehicle()这个对象里面,有一个小段空间放的和m里面的值一样。纯属自己理解,有问题的话请担待
展开全部
举个例子,Animal dog = new Animal(); new Animal()创建了一个对象,类型是Animal。而Animal dog则创造了一个可以存储Animal类型对象引用的“引用存储器”。而等号=则把new Animal()这个对象的引用存到了dog之中,这样你就可以用dog来使用这个对象数据和方法了。this表示的是当前类,也就是本类,用this可以调用本类对象的成员属性和成员方法。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
对象的引用,本质上就是存的内存中对象的首地址,通过引用中的首地址找到对象,使用对象。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
this就是当前对象的一个引用。能够调用属性和方法。
追问
你是说,对对象的引用,就是可以去调用对象的方法和数据成员,而以this为例,它就具备了这个功能,是这样么…其实我只是不确定引用是一个怎样的概念,之前只在c++里浅显的遇到过…
追答
Test t = new Test();
t也是Test的引用 ,你可以简单理解为t就是Test或者Test对象里面的this就是Test
当然t跟this还是有区别。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
每次你声明一个变量并将对象赋予给这个变量时,这变量保存的是java对象的引用。
更多追问追答
追问
不明白的点是,“java对象的引用”,java对象的引用意味着什么,或者说,java对象的引用可以完成哪些事?
追答
java对象的引用相当于人的名字,你可以你用引用去调用实例方法的方法,去访问实例的成员变量
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询