Wednesday, 1 January 2014

Overloading

If a class have multiple methods by same name but different parameters, it is known as Method Overloading

Suppose you have to perform addition of the given numbers but there can be any number of arguments, if you write the method such as a(int,int) for two parameters, and b(int,int,int) for three parameters then it may be difficult for you as well as other programmers to understand the behavior of the method because its name differs. So, we perform method overloading to figure out the program quickly.  

Advantage of method overloading is: It increases readability of the program.

Overloaded methods are differentiated by the number, position and the type of the arguments passed into the method.
In java, method overloading is not possible by changing the return type of the method because there may occur ambiguity(it gives compile time error). 

There are two ways to overload the method in java
  1. By changing number of arguments
  2. By changing the data type

Example of Method Overloading by changing the no. of arguments:

class Calculation{  
  void sum(int a,int b){System.out.println(a+b);}  
  void sum(int a,int b,int c){System.out.println(a+b+c);}  
  
  public static void main(String args[]){  
  Calculation obj=new Calculation();  
  obj.sum(10,10,10);  
  obj.sum(20,20);  
  
  }  
}  
Output: 30
             40

Example of Method Overloading by changing data type of arguments:

class Calculation{  
  void sum(int a,int b){System.out.println(a+b);}  
  void sum(double a,double b){System.out.println(a+b);}  
  
  public static void main(String args[]){  
  Calculation obj=new Calculation();  
  obj.sum(10.5,10.5);  
  obj.sum(20,20);  
  
  }  
}  

Output: 21.0
             40

 

 

No comments:

Post a Comment