方法的重载:
判定一个方法是否属于重载或重复定义是根据方法的签名来定。
方法签名 = 方法名 + 形参列表
tes(int a ,dobule b);
test(int a ,int b);
方法的重写:
"方法的签名" 与父类一模一样,并且在父子类之间出现方法签名一致, 这个叫重写/覆盖
编译时,
(1) 一旦检查到方法签名一致的。
(2) 子类必须能看见父类的方法:
1、父类的方法不私有,父类方法没有使用了包权限
2、对于父类方法可调用, 认为就是想重写, 条件必须满足重写的规范.
重写的规范
[1] 返回值: 子类返回值[层次] <= 父类返回值[层次]
重写的权限修饰符
1] 权限修饰符: 子类权限 >= 父类权限
在方法前加上@Override, 编译器会帮你做重写检查
总结:
方法重写必须满足下列条件(1) 子类的方法签名(方法的名称及参数)必须和所覆盖的方法相同
(2) 子类的方法返回类型[层次]必须小于等于所覆盖的方法
(3) 子类的方法权限修饰符必须大于等于所覆盖的方法
方法重载必须满足下列条件
(1) 方法签名必须相同
(2) 在方法的参数不同的情况下,方法的返回类型可以不相同。