Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我如何声明这样的函数?_Java_Methods_Chaining_Method Chaining - Fatal编程技术网

Java 我如何声明这样的函数?

Java 我如何声明这样的函数?,java,methods,chaining,method-chaining,Java,Methods,Chaining,Method Chaining,如何在Java中声明下面的damagePlayer之类的函数 player.getPlayer1().damagePlayer(50); 我已经知道,我们必须申报这样的东西才能得到它: ServerPlayer player = new ServerPlayer(); 但是,我们如何将第二个函数(GetPlayer())放在第一位呢?我正在学习Java,这将是一种保存代码的好方法 在名为Player的类上声明方法,该方法将起作用 public Player getPlayer(){

如何在Java中声明下面的
damagePlayer
之类的函数

player.getPlayer1().damagePlayer(50);
我已经知道,我们必须申报这样的东西才能得到它:

ServerPlayer player = new ServerPlayer();

但是,我们如何将第二个函数(
GetPlayer()
)放在第一位呢?我正在学习Java,这将是一种保存代码的好方法

在名为
Player
的类上声明方法,该方法将起作用

public Player getPlayer(){
    return this;
}

public void damagePlayer(int damage){
    ...
}    
这只是一种方式

答案是-第一个方法必须返回对象,该对象是Player类的实例,其中方法
damagePlayer

player.getPlayer1().damagePlayer(50);
damagePlayer(50)将作为getPlayer1()返回的类型的方法编写。因此,在实例player.getPlayer1()返回的类中实现damagePlayer(intx)类

因此,如果getPlayer1()返回一个Foo类型(或类)的对象,您将在Foo类中编写damagePlayer方法

例如


你想声明什么函数?getPlayer1还是damagePlayer?你只是想声明还是实现这个函数?我想问的是,首先我该如何声明这个函数。OP想要得到Player1。听起来他想留住一批球员,然后让第一个回来。也许吧。编辑:本吉说的。
Bar bar = new Bar();
bar.doThis().doThat(25) ;

class Bar{
  public Foo doThis() {
    Foo foo=new Foo();
    //do some thing using foo

    return foo;
  }
}

class Foo() {

  void doThat(int number){
    // can do anything using parameter number and return anything
  }

}