什么是方法重载?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
方法重载是指在一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型或参数的个数。方法的重载,既可以发生在普通方法上,也可以发生在构造方法上。方法的重载,既可以发生在同类中,也可以发生在父子类中。
方法重载就是方法名称重复,加载参数不同。
在一个Java类中,定义多个同名的方法,如果方法名相同,方法参数不同,包括参数的类型和个数都不同,叫做方法的重载。调用重载方法时,Java 编译器通过检查调用的方法的参数类型和个数选择一个恰当的方法。方法重载常用于创建完成一组任务相似但参数的类型或参数的个数或参数的顺序不同的方法。
方法的重载,既可以发生在普通方法上,也可以发生在构造方法上。方法的重载,既可以发生在同类中,也可以发生在父子类中。
Java方法的重载:返回类型、修饰符可以相同,也可不同。要求同名的方法必须有不同的参数表,仅有返回类型不同是不足以区分两个重载的方法。
具体规范
1、方法名一定要相同。
2、方法的参数表必须不同,包括参数的类型或个数,以此区分不同的方法体。
1)、如果参数个数不同,就不管它的参数类型了!
2)、如果参数个数相同,那么参数的类型必须不同。
3、方法的返回类型、修饰符可以相同,也可不同。
例子:
题目要求:比较两数据是否相等。
参数类型分别为两个byte类型、两个short类型、两个int类型、两个long类型。
并在main方法中进行测试
public class CaiNiao{ public static void main(String[] args){ byte a = 10; byte b = 20; System.out.println(isSame(a,b)); System.out.println((isSame(short)20,(short)20)); System.out.println(isSame(11,22)); System.out.println(isSame(10L,10L)); } public static boolean isSame(byte a,byte b){ System.out.println("两byte参数的方法执行!"); boolean same ; if(a==b){ same = true; }else{ same = false; } return same; } public static boolean isSame(short a,short b){ System.out.println("两short参数的方法执行!"); boolean same = a == b ?true:false; return same; } public static boolean isSame(int a,int b){ System.out.println("两int参数的方法执行!"); return a == b:; } public static boolean isSame(long a,long b){ System.out.println("两long参数的方法执行!"); if (a==b){ return true; } else{ return false; } } }
注意,Java的方法重载要求同名的方法必须有不同的参数表,仅有返回类型不同是不足以区分两个重载的方法。
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。