普通方法的重载
同一个类中;相同方法名;参数列表不同.
/**
* 重载
* @author z
* @since 20220324
*/
public class OverLoading {
String name;
int a;
int b;
//个数不同,数据类型不同,顺序不同
public void add(int a,int b){
System.out.println(b);
}
public void add(int a,String name){
System.out.println(a+" "+name);
}
public void add(String name,int a){
System.out.println(name+" "+a);
}
//与修饰符无关。
private void add(int a){
System.out.println(a*3);
}
//参数列表必须不同
// public void add(int a,int b){
// }
// public void add(int b,int a){
// }
//无法以返回值类型作为重载函数的区分
// public int add(int a){
// return a+=a;
// }
// public void add(int a){
// }
public static void main(String[] args) {
OverLoading overLoading = new OverLoading();
overLoading.add(1,"ceshi");
overLoading.add(10);
overLoading.add(10,20);
}
}
构造方法的重载
构造方法语法结构
构造方法是在类中定义的方法,不同于其他的方法,构造方法的定义有如下两点规则:
1、构造方法的名称必须与类名相同;
2、构造方法没有返回值,但也不能写void。
语法:
[访问修饰符] 类名( ){
//构造方法体
}
构造方法特点
1.构造方法的名字必须和类名完全相同。
2.方法名前面没有返回值,甚至连表示没有返回值的空类型(void)也没有。
3.在方法中不能使用return语句返回一个值。
4.构造方法一般定义是为public。
5.构造方法是在创建对象时被调用,使用new运算符调用构造方法。
6、若自己不写构造方法,则编译器默认给一个无参构造,若自己写了,则不再默认提供无参构造。
7、构造方法可以重载。
对一个类定义多个构造方法,这些构造方法都有相同名称(类名),方法的参数不同(参数类型或参数个数不一样),称之为构造方法的重载。
一个构造方法可以通过this关键字调用另外一个重载的构造方法