调用方法

时间:2017-01-19 17:38:54

标签: java oop

你好我必须让青蛙抓飞。我已经获得了他们将用于测试方法的代码,他们将使用两者

catchFly();

catchFly(3);
如果发生这种情况,是否有办法满足这两种可能性,因为我不知道如何检查是否存在参数

   public void catchFly()

   {

         super.catchFly();
         account.credit(100);
         super.yellow();
         super.jump();
         super.green();

   }

2 个答案:

答案 0 :(得分:0)

是的,方法重载是可能的,

的名称

只需定义另一个具有相同名称但其他参数的方法(请参阅什么是方法的签名)

public void catchFly(int whatEver){
     super.catchFly();
     account.credit(whatEver);
     super.yellow();
     super.jump();
     super.green();
}

答案 1 :(得分:0)

首先定义需要参数的方法:

public void catchFly(int value) {
    super.catchFly();
    account.credit(value);
    super.yellow();
    super.jump();
    super.green();
}

当值已知时可以使用:

catchFly(3);

然后,对于值未知的情况,定义一个提供硬编码默认值的重载:

public void catchFly() {
    catchFly(100);
}

你可以不用争论地打电话:

catchFly();

在这种情况下,重载通常是传递方法,它调用主逻辑方法,只需在需要时提供默认值。