Methods
Methods
4000
4000
Dog d1=new Dog(); d1
int a=4000 4000
int b; Dog d2;
b=a d2=d1 d2
4000
Value type assignment Reference type assignment
Object
Dog
class LaunchCalculator{
p s v m(String args[]){
Calculator calc=new Calculator();
void add(){
calc.add(); } a=10;
} b=20;
class Calculator{ c=a+b;
int a,b,c; S.o.p(c);
}
void add(){
4000
a=10;
p s v m(String args[]) a 0 10
b=20; {
c=a+b; Calculator calc=new Calculator(); b 0 20
calc
System.out.println(c); calc.add(); c 0 30
4000
}
}
}
Stack Heap
output name(input)
{
activity
}
returntype name(parameters)
{
Body of the method
}
Output 30
2) input but no output
OS
class LaunchCalculator{
p s v m(String args[]){
Calculator calc=new Calculator();
void add(int x,int y){
int a=10,b=20; c=x+y;
calc.add(a,b); } S.o.p(c);
} } x 10 y 20
class Calculator{
int c;
void add( int x,int y){ 4000
c=x+y; p s v m(String args[])
{
System.out.println(c); Calculator calc=new Calculator();
} int a=10,b=20; calc
calc.add(a,b); 4000 c 0 30
}
} a 10 b 20
Stack Heap
Output 30
3) no input but output
OS
class LaunchCalculator{
p s v m(String args[]){
Calculator calc=new Calculator(); int add(){
int res=calc.add(); a=10;
S.o.p(res);} b=20;
}class Calculator{ c=a+b;
return c;
int a,b,c;
}
int add(){
4000
a=10;
p s v m(String args[]) a 0 10
30 b=20; {
c=a+b; Calculator calc=new Calculator(); b 0 20
calc
return c; int res=calc.add(); c 0 30
4000
Sop(res);
} } res 30
}
Stack Heap
Output 30
4) Input output
OS
class LaunchCalculator{
p s v m(String args[]){
Calculator calc=new Calculator();
int add(int x,int y){
int a=10,b=20; c=x+y;
Int res=calc.add(a,b); return c;
Sop(res);} } x 10 y 20
}
class Calculator{ 4000
int c; p s v m(String args[])
30 int add( int x,int y){ { res 30
c=x+y; Calculator calc=new Calculator();
int a=10,b=20; calc
return c; Int res=calc.add(a,b); 4000 c 0 30
} } a 10 b 20
}
Stack Heap
Method Overloading
C
int add(int x,int y){ float add(int x, float y){
return x+y; return x+y;
} }
ERROR
In C programming language , to add numbers we
cannot have two methods with same name it
leads to error as shown above.
Method Overloading
C double add6(int x, float y, double
int add1(int x,int y){ z){
return x+y; return x+y+z;
double add11(float x, double
} }
float z){
float add2(int x, float y){ float add7(int x, float y, float return x+y+z;
return x+y; z){ }
} return x+y+z; float add12(float x, int y){
} return x+y;
float add3(float x,float y){ float add8(float x, float y, float z){ }
return x+y; return x+y+z;
} }