为了账号安全,请及时绑定邮箱和手机立即绑定

参数中的非创建对象

参数中的非创建对象

慕妹3242003 2021-12-01 15:29:39
Schildt 使用下图示例来展示如何将对象用作参数。我有一个关于这个例子的问题:如果我想使用一个变量作为参数,我必须先声明它,那么为什么一个对象(Test o)可以在没有被创建的情况下使用呢?Java如何处理这个?对不起,如果这是一个愚蠢的问题,我只是想详细了解这一点,而不仅仅是记住它。
查看完整描述

3 回答

?
大话西游666

TA贡献1817条经验 获得超14个赞

我假设你指的是:

boolean equalTo(Test o) { ... }

Test o在这种情况下是一个参数的定义。调用此方法时,您必须传入一个Test对象。在这样做之前,您通常会创建一个实例,尽管您可以根据需要传入null


查看完整回答
反对 回复 2021-12-01
?
料青山看我应如是

TA贡献1772条经验 获得超8个赞

当您将对象作为方法的参数传递时,您不需要再次在函数中对其进行初始化。如果这样做,您将创建一个新对象并使用新对象而不是作为参数传递的对象。这显然是您最可能不想做的事情。

但是,传递的参数可以为空,因此您可以在方法中添加空检查器,如下所示:

if(test == null) { return false; }


查看完整回答
反对 回复 2021-12-01
?
MM们

TA贡献1886条经验 获得超2个赞

以下面的函数为例:


   public class ThisClass{

        void variableAsParameter( int a){

             System.out.println(a);

        }

        public static void main(String args[]){

             ThisClass thisIsAnObject = new ThisClass();

             int variableToBeUsed = 23; 

             thisIsAnObject.variableAsParameter(5);

             thisIsAnObject.variableAsParameter(variableToBeUsed);

        }

   }

所以在这个例子中,你可以看到,当你variableToBeUsed作为参数使用时,你已经在主函数中声明了。同样,在您发布的示例中,Test o实际引用ob2和ob3来自主函数。参数和变量不必具有相同的名称。


希望这可以帮助。


查看完整回答
反对 回复 2021-12-01
  • 3 回答
  • 0 关注
  • 143 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信