方法的重载overload是指一个类中可以定义有相同的名字,但是参数列表不同,调用时,会根据不同的参数列表选择对应的方法。 所以只和参数列表有关系。 规则:两同三不同 --同一个类,同一个方法名 --不同:参数列表不同(类型、个数、顺序不同) --只有返回值不同不能构成方法的重载 --只有形参的名称不同,不能构成方法的重载 什么时候用重载? 当定义的功能相同,但参与运算的未知内容不同,那么,这时就定义一个函数名称表示该功能,方便阅读,而通过参数列表的不同来区分多个同名函数。 练习。。 一下哪些函数是重载的哪些不是? void show(int a ,char b,double c){} 1. void show(int x, char y, double z){}//没有重载 与原函数一样 2.int show(int a, double c,char b){}//重载了 参数列表不同 3.void show (int a, double c,char b){}//重载了 参数列表不同 同上 4.boolean show (int c, char b)//重载了 参数列表不同 5.void show(double c)//重载了 参数个数不同 6.double show(intx, char y,double z)//没有重载 参数一致 方法的重写: 方法名保持一致 子类权限修饰符可以大于等于负累的 子类的返回值类型小于等于父类的类型,子类声明异常类型不能超过父类的类型
重载与重写
最新推荐文章于 2024-01-06 17:58:17 发布