What is method overload?
In a class, when two functions have same name but the parameter are different , we call this is method overload.
Both constructor and common method can overload.
eg: println have 10 methods, such as null, boolean x, char x, char[] x...
Focus:
The basis of method overload is the type and number of parameter.
Two queations:
1. Dose this is overload?
public void print(String s);
public void print(String sname);
No
2. Dose this is overload? Consider the sequence of parameter
public void print(String s, int n);
public void print(int sno, String sname);
Yes, But don't recommend
3.Dose this is overload?
public int print();
public void print();
No. it's two different method, we need rename one of it.
Here an example
package javaObjectOrientedProgrammingMooc;
public class Student {
private int sno;
private String sname;
public Student() {
sno = 001;
sname = "Kiki";
}
public Student(int snoIn) {
sno = snoIn;
}
public Student(int snoIn, String snameIn) {
sno = snoIn;
sname = snameIn;
}
public Student(String snameIn, int snoIn) {
sno = snoIn;
sname = snameIn;
}
public int getSno() {
return sno;
}
public String getSname(){
return sname;
}
public void setSno(int snoIn) {
sno = snoIn;
}
public void setSname(String snameIn){
sname = snameIn;
}
public void print() {
System.out.println(getSno());
System.out.println(getSname());
System.out.println();
}
}