重载JVA方法
方法重载(overload )
在Java中,可以在一个类中定义多个同名的方法,但参数的类型或数量必须不同。 这就是方法的重载
公共类方法演示02 {
publicstaticvoidmain (字符串[ ] args ) {
//以下是对加法方法的调用
Intsum1=a dd01 (1,2 );
Intsum2=add 02 (1,2,3 );
双精度和3=add 03 (1.2,2.3 );
//以下代码是打印总结果
system.out.println(sum1='sum1);
system.out.println(sum2='sum2);
system.out.println(sum3='sum3);
}
//以下方法实现了两个整数的相加
publicstaticintaDD01(intx,int y ) {
返回x y;
}
//以下方法实现了三个整数的相加
publicstaticintadd02(intx、int y、int z ) {
返回x y z;
}
//用以下方法把两个小数加起来
publicstaticdoubleadd 03 (双精度,双精度y ) {
返回x y;
}
}
重载注意事项
1 .重载方法的参数必须不同。
参数的数量不同,如方法(int y )和方法(intx,int y )
参数类型不同,如方法(intx )和方法(doublex )
参数的顺序不同,如方法(int y,double y )和方法(method ) double y,int y )
2 .重载只与方法名称和参数类型相关,与返回值无关
例如,voidmethod(intx )和int method (inty ) inty )不是方法重载,不能同时存在
3 .重载与特定变量标识符无关
例如,method(intx )和method(intx )不是方法的重载,不能同时存在
方法重写(override )
一、改写是什么
在子类中创建了与父类相同的名称、返回类型和参数列表方法。 但是,方法主体内的实现不同,实现了与父类不同的功能。 该方法称为方法重写(override ),也称为方法重写、方法重写。
二、为什么需要重写
传统方法不能满足新的需要,必须对该方法进行改进以满足新的需要。 在子类继承父类方法时发生重写。 可见重写是子类继承的父类方法不能满足子类的新功能需要,子类是改进和重写父类中此方法的方法。 子类可以根据需要定义自己特定的行为。 在继承父类功能名称的同时,根据子类的需要重新实现父类方法来进行扩展扩展。
三.改写条件/规则
*参数列表必须与改写的方法完全相同
*返回值必须完全相同
*无法改写构建方法。
*访问权限不能低于父类重写的方法
*无法重写父类的专用(private )方法
声明为final的方法不可重写
声明为static的方法不可重写,但可以再次声明
*如果子类不是抽象类,则子类必须重写父类的abstract方法
*如果子类和父类位于同一包下,则子类可以复盖除private和final之外的所有方法
*如果子类和父类不在同一包下,则子类可以重写父类中的公共限定和保护性限定方法
*无论重写的方法是否抛出异常,重写方法都可以抛出任何非强制异常。 但是,重写的方法不能抛出新的强制异常
*注:强制异常是指在编写程序的过程中,必须在抛出异常的部分向try-catch或throw抛出异常