Method Chaining is the practice of calling different methods in a single line instead of calling different methods with the same object reference separately. Under this procedure, we have to write the object reference once and then call the methods by separating them with a (dot.). It must be your foremost question, how will it work and how to use it?.
Let’s audit the example first and then it will be much smoother to explain.
Compilation Error in java code:-
prog.java:34: error: int cannot be dereferenced new A().setint(10).display(); ^ 1 error
Let’s Figure Out The Above Example:
- When we are calling the constructor, one should perceive that constructor does not holds any return type BUT it returns the current object reference. Open this for more about constructors.
- As object reference is returned by the constructor, we can use the returned object reference for calling another method as well.
- Thus, by implementing dot(.) operator we can call another method too, named “setint(10)”. As of now, we are trying to call the display method further, but, it’s impossible. Why? check out the next point.
- Now, “setint(10)” method is returning integer value of the variable and in a common way, one can easily understand that next method can’t be called on the basis of a variable. To solve this, “setint(10)” method must return object reference. How it can be done?.
Calling The Constructor Display=10 20.0
Output : Calling The Constructor
- In the above example, we have derived setint(int a) & setfloat(float b) method as the class type.
- In this case, while returning we are using “this” and it is returning the current instance reference. Check this for the uses and values of “this” reference variable.
- When the method chaining is implemented in the main method, “setint(10)” & “setfloat(20)” are returning the object’s reference which is further used to call “display()” method.
Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer Complete Interview Preparation Course.