java一个类中方法的返回值,必须是指向返回值类型的一个引用,这句改怎么理解,我这样理解对吗?
网页有问题发私信验证码显示不出来嗨。。最后一个问题哦。。比如说:Objectb=newObject();那么对上面的Object而言,这个引用就值的是b,而不是实际的对象...
网页有问题 发私信 验证码显示不出来
嗨 。。 最后一个问题哦。。
比如说 :
Object b = new Object();
那么对上面的Object而言,这个引用就值的是b,而不是实际的对象new Object();。
那么对于类中的方法,比如说:
class Teacher {
public String name(){
return " " ;
}
} 就上面的简单的类 ,name这个方法,要求返回值是String," "确实也是String 。
但是我对“方法的返回值,必须是指向返回值类型的一个引用”这句话理解不是很透彻。
就name这个方法而言,它没有引用啊。
String name = " " ;这句话的引用是name,上面name方法返回了上面引用呢? 展开
嗨 。。 最后一个问题哦。。
比如说 :
Object b = new Object();
那么对上面的Object而言,这个引用就值的是b,而不是实际的对象new Object();。
那么对于类中的方法,比如说:
class Teacher {
public String name(){
return " " ;
}
} 就上面的简单的类 ,name这个方法,要求返回值是String," "确实也是String 。
但是我对“方法的返回值,必须是指向返回值类型的一个引用”这句话理解不是很透彻。
就name这个方法而言,它没有引用啊。
String name = " " ;这句话的引用是name,上面name方法返回了上面引用呢? 展开
2个回答
展开全部
不是这样的啊。。。
返回了一个对象啊。。。
比如这样:return new Object();
此时没有引用指向这个对象啊。。。
方法的返回值,只要类型一样就OK了,因为jvm会自己判断,当你返回引用和返回对象都不会报错的。。。。
public class Test {
public static String show(){
String str ="hello";
return str;
}
public static void main(String[] args) {
show();
System.out.println(show());
}
或者这样:
public class Test {
public static String show(){
return "hello";
}
public static void main(String[] args) {
show();
System.out.println(show());
}
2个结果都一样的。。在第一个代码中,你又不能获取函数中返回的str引用,不管怎么样都需要重新来一个引用。。
public class Test {
public static String show(){
return "hello";
}
public static void main(String[] args) {
String str = show();
System.out.println(str);
}
java里面不是有多态么?在一个函数中,当你的形参是父类的引用时,不管你传入的是子类的引用,还是子类的new Object();jvm不是都可以识别。。。这是一样的。。。
应该是jvm也许在你返回一个对象时,临时的创建一个引用。。。。
可能是这样的,猜的,,,,,
返回了一个对象啊。。。
比如这样:return new Object();
此时没有引用指向这个对象啊。。。
方法的返回值,只要类型一样就OK了,因为jvm会自己判断,当你返回引用和返回对象都不会报错的。。。。
public class Test {
public static String show(){
String str ="hello";
return str;
}
public static void main(String[] args) {
show();
System.out.println(show());
}
或者这样:
public class Test {
public static String show(){
return "hello";
}
public static void main(String[] args) {
show();
System.out.println(show());
}
2个结果都一样的。。在第一个代码中,你又不能获取函数中返回的str引用,不管怎么样都需要重新来一个引用。。
public class Test {
public static String show(){
return "hello";
}
public static void main(String[] args) {
String str = show();
System.out.println(str);
}
java里面不是有多态么?在一个函数中,当你的形参是父类的引用时,不管你传入的是子类的引用,还是子类的new Object();jvm不是都可以识别。。。这是一样的。。。
应该是jvm也许在你返回一个对象时,临时的创建一个引用。。。。
可能是这样的,猜的,,,,,
来自:求助得到的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我已经发到你私信上了,度娘把我的回答抽了,是“牙刷的悲伤”那个号。。。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询