官术网_书友最值得收藏!

Method call chaining

OOP affords us the opportunity to use method call chaining. That is the process of making multiple method calls in a single statement. Here is the syntax:

object.method1().method2().method3().method4();

Using the syntax provided previously, we can walk through the process of method call chaining. The object first calls method1(), which returns the calling object. Next, that returned object calls method2(), which returns the calling object. You can see the process here. It works from left to right.

So, we can implement this in our Driver class, as shown here:

// Example using method call chaining
Bicycle myBike5 = new Bicycle(24, 418.50, 17.2, "Green");
myBike5.setColor("Peach").setGears(32).outputData("Number 5");

Before this code can work, we will need to make two changes to each method we want to use in our method call chaining:

  • Add a return type to the method definition
  • Add a return this; statement to each method

Here is an example of the setGears() method that the preceding changes listed made:

public Bicycle setGears(int nbr) {
this.gears = nbr;
return this;
}

Once these changes are made, we can run the Driver class:

Method call chaining execution results

The preceding screenshot shows the final result.

主站蜘蛛池模板: 卢湾区| 民和| 南投县| 葵青区| 尼玛县| 烟台市| 綦江县| 安康市| 崇仁县| 铜山县| 洪雅县| 鸡东县| 嘉禾县| 麻阳| 拉萨市| 西丰县| 高邑县| 合江县| 如东县| 吉安市| 山阳县| 大同市| 湘乡市| 得荣县| 岢岚县| 桃江县| 武山县| 绥阳县| 宁河县| 车险| 桦南县| 大关县| 若羌县| 勐海县| 丹巴县| 来宾市| 太仆寺旗| 剑河县| 南平市| 伊宁市| 鹤峰县|