调用自身的 Java 方法?

问题描述 投票:0回答:1

我在一本 Java 书中看到了这个片段(Walter Savitch):

/**
Class whose privacy can be breached.
*/
public class PetPair
{
  private Pet first, second;
  public PetPair(Pet firstPet, Pet secondPet)
  {
    first = firstPet;
    second = secondPet;
  }
  public Pet getFirst()
  {
    return first;
  }
  public Pet getSecond()
  {
    return second;
  }
  public void writeOutput()
  {
    System.out.println("First pet in the pair:");
    first.writeOutput();
    System.out.println("\nSecond pet in the pair:");
    second.writeOutput();
  }
}

我不明白的是为什么方法“writeOutput”在其体内有对 writeOutput 本身的调用。一个方法中如何可以有相同的方法,即一个方法如何调用自身?我可以理解一个方法调用另一个方法,但这对我来说没有意义!

我什么也没尝试。我没有尝试在 Eclipse 上运行该程序。为什么?因为我不明白调用自身的方法背后的想法。如果有人可以向我解释这一点,我很乐意运行该程序并查看输出。我确信该程序可以运行,因为我从书上得到了它,但是运行它不会对我有任何好处,因为我不理解其基础。

java methods
1个回答
0
投票

我不明白的是为什么方法“writeOutput”在其体内有对 writeOutput 本身的调用。

“writeOutput”方法不会调用它自己,它“首先”调用 Pet 对象中的 writeOutput 方法,然后调用“第二个”Pet 对象上的 writeOutput 方法。

它调用 Pet 类中名为 writeOutput 的方法,而不是它本身的 writeOutput 方法。

如果它真的想调用它 self ,它会调用它 self 作为“this.writeOutput()”

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.