package cn.yuan.day04;
// 重载 Overload
/*
* 多个方法的名称一样,就额可以实现类似的功能
*
* 方法的重载(Overload)
* 1、多个方法的名称一样 但是参数不一样包含类型,个数,顺序 ,根据调用的入参匹配
* 2、可以没有返回值 但是在调用的地方只能单独调用不能使用赋值 或者 打印调用
* python 如果没有return 默认隐式的返回None java函数定义了void是真的啥都没有返回
* 3、不受 定义的返回类型影响
*
*
* */
public class FuncHeavyLoad {
public static void main(String[] args) {
System.out.println(sum(1, 2));
System.out.println(sum(1, 2, 3));
System.out.println(sum(1, 2, 3, 4));
System.out.println(sum(1, 2, 3, 4, 5));
String a = "nimei";
String b = "nihao";
sum(a, 3);
sum(3, b);
long al=999999L;
long bl=999999L;
System.out.println(isTrue(al,bl));
}
public static int sum(int a, int b) {
return a + b;
}
public static int sum(int a, int b, int c) {
return a + b + c;
}
public static int sum(int a, int b, int c, int d) {
return a + b + d;
}
public static String sum(int a, int b, int c, int d, int e) {
//return a+b+d;
return null;
}
public static void sum(String a, int b) {
System.out.println("void 类型 是真的啥都不返回 参数类型不同 ");
}
public static void sum(int a, String b) {
System.out.println("void 类型 是真的啥都不返回 参数类型不同 且顺序不同");
}
public static boolean isTrue(int a, int b) {
return a == b;
}
public static boolean isTrue(long a, long b) {
return a == b ? true : false;
}
}