• 技术文章 >Java >Java基础

    方法重载是什么?

    青灯夜游青灯夜游2020-07-18 13:32:43原创1430

    方法重载是指在一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型或参数的个数。方法的重载,既可以发生在普通方法上,也可以发生在构造方法上。方法的重载,既可以发生在同类中,也可以发生在父子类中。

    方法重载就是方法名称重复,加载参数不同。

    在一个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的方法重载要求同名的方法必须有不同的参数表,仅有返回类型不同是不足以区分两个重载的方法。

    推荐教程:Java教程

    以上就是方法重载是什么?的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:java 方法重载
    上一篇:java的八种基本数据类型是什么? 下一篇:java打印输出语句是什么?
    大前端线上培训班

    相关文章推荐

    • java经典面试题集锦(八)• Java中class与Class有什么区别• Java中可以自定义异常类么• Java中Random类的使用介绍

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网