谁能给我解释一下java这个函数中返回值有什么不同?
classA{publicAshow(){returnA.this;//returnthis;}}...
class A{ public A show() { return A.this; //return this; }}
展开
展开全部
没有任何不同,除了写法上...对应的是同一个hash码.测试代码如下:
public class Test{
public Test show1() {
return Test.this;
}
public Test show2() {
return this;
}
public static void main(String[] args){
Test test = new Test();
System.out.println(test.show1());
System.out.println(test.show2());
}
}
public class Test{
public Test show1() {
return Test.this;
}
public Test show2() {
return this;
}
public static void main(String[] args){
Test test = new Test();
System.out.println(test.show1());
System.out.println(test.show2());
}
}
展开全部
返回A.this 就是返回当前对象的引用,看如下代码:
public class Test {
String name;
public static void main(String[] args) {
Test t = new Test();
t.name = "1";
Test t2 = t.show();
System.out.println(t2.name);
}
public Test show() {
return Test.this;
}
}
返回了t的引用赋值给t2,那么t2的name也为“1”了,输出结果为1
public class Test {
String name;
public static void main(String[] args) {
Test t = new Test();
t.name = "1";
Test t2 = t.show();
System.out.println(t2.name);
}
public Test show() {
return Test.this;
}
}
返回了t的引用赋值给t2,那么t2的name也为“1”了,输出结果为1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
返回了A类隐藏的this指针
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
返回了A类隐藏的this指针,就是A的对象
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
返回A对象
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询