Java 方法本身中方法返回值的用法
您可以跳过blabla,转到“下面的示例”。 当创建具有给定返回类型的方法时,是否存在调用该方法时创建的方法returntype的实例?例如,如果我有一个用户类,并且我创建了一个用户返回类型的方法,那么在调用该方法时,是否在该方法内部创建了该用户类的新实例? 你可以这样说;public Object getObject(…){…}创建一个未初始化的对象,如下所示:public Object Object;您可以在方法内部使用哪些?当调用方法中的返回类型时,它会执行以下操作:object=return();它返回在方法内声明的对象实例。我知道我得到了它,也许其他人可以编辑它,让更多的stackoverflow观众更清楚 下面的示例: 例如,这在某种程度上是可能的:Java 方法本身中方法返回值的用法,java,methods,return-type,Java,Methods,Return Type,您可以跳过blabla,转到“下面的示例”。 当创建具有给定返回类型的方法时,是否存在调用该方法时创建的方法returntype的实例?例如,如果我有一个用户类,并且我创建了一个用户返回类型的方法,那么在调用该方法时,是否在该方法内部创建了该用户类的新实例? 你可以这样说;public Object getObject(…){…}创建一个未初始化的对象,如下所示:public Object Object;您可以在方法内部使用哪些?当调用方法中的返回类型时,它会执行以下操作:object=retu
public UserObject getSomethingDone(User user){
getSomethingDone.setSomething(user.getSomething);
return getSomethingDone;
}
与此相反:
public UserObject getSomethingDone(User user){
UserObject userObject = new UserObject();
userObject.setSomething(user.getSomething);
return userObject;
}
编辑:
nvm提出了一个愚蠢的问题,因为我说它可能会创建一个单元化的对象实例,但当然不能使用单元化的对象实例,因为它在返回之前没有初始化。那么这可能是可能的:
public UserObject getSomethingDone(User user){
getSomethingDone = new UserObject();
userObject.setSomething(user.getSomething);
return userObject;
}
但这没有多大意义 您可以使用反射API获取方法的返回类型,但这比简单地实例化返回类型的新对象要麻烦得多。否,不执行隐式对象创建。在Java中,您曾经显式地创建返回对象。简言之,没有。Java(特别是C系列)不是这样工作的。看起来您有某种Pascal家族背景,它确实按照您所说的方式工作(好吧,几乎是这样,因为返回值未初始化*)
*:我指的是你的例子,不是你的问题,因为它们相互矛盾。老实说,我没有帕斯卡背景,只有一些C。但无论如何,我只是好奇,因为我不喜欢写不必要的代码。但现在,当我询问并认为我了解它是如何工作的。谢谢你的反馈。这听起来很有趣,我只是为了了解它,而不是因为它很有用:p.好的,学习总是好的,但是如果你正在创建一个方法,其中部分代码是动态生成的,例如从编译器/解释器生成的,那么你所问的可能会更有意义。在这种情况下,您可能想说“实例化方法返回的任何类型的对象”。但对于日常编程来说,这并不容易或方便。