/*
方法重载(overload):
什么时候需要考虑使用方法重载?
在同一个类当中,如果“功能1”和“功能2”它们的功能是相似的,
那么可以考虑将它们的方法名一致,这样代码既美观,又便于
后期的代码编写(容易记忆方便使用)。
注意:方法重载overload不能随便使用,如果两个功能压根不相干,
不相似,根本没关系,此时两个方法使用重载机制的话,会导致
编码更麻烦。无法进行方法功能的区分。
什么时候代码会发生方法重载?
条件1:在同一类当中
条件2:方法名相同
条件3:参数列表不同
参数的个数不同算不同
参数的类型不同算不同
参数的顺序不同算不同
只要同时满足以上3个条件,那么我们可以认定方法和方法之间发生了
重载机制。
注意:
不管代码怎么写,最终一定要能让java编译器很好的区分开这两个方法。
方法重载和方法的返回值类型无关,也和修饰符列表无关
*/
public class OverloadTest03{
public static void main(String[] args){
m1();
m1(1);
m2(3,3.0);
m2(3.0,3);
m3(3);
m3(3.0);
MyClass.m1(10,20);
}
//参数的个数不同算不同
public static void m1(){
System.out.println("no parameter implement");
}
public static void m1(int a){
System.out.println("int type parameter implement");
}
// 参数的顺序不同算不同
public static void m2(int x,double y){
System.out.println("欧尼酱");
}
public static void m2(double y,int x){
System.out.println("欧捏酱");
}
//参数的类型不同算不同
public static void m3(int y){
System.out.println("欧尼酱");
}
public static void m3(double y){
System.out.println("欧捏酱");
}
//错误: 已在类 OverloadTest03中定义了方法 m4()
/*public static int m4(){
return 1;
}
public static double m4(){
return 1.0;
}*/
}
class MyClass{
//不在同一个类当中,不能叫做方法重载
public static void m1(int a,int b){
System.out.println("error");
}
}
Java中的方法重载机制的初步认识
最新推荐文章于 2021-12-06 00:49:36 发布