方法的重写 和 final关键字
方法的重写
父类继承的方法不能满足子类的需求的情况下,可以进行改写,这个过程就是方法的重写,子类中出现了和父类一模一样的方法声明,
方法的覆盖或复写
父类:
public class Father {
public void eat(int num){
System.out.println("飞机");
}
}
子类
public class Son extends Father{
@Override
public void eat(int num) {
System.out.println("飞走了..");
}
}
测试
public static void main(String[] args) {
Son s = new Son();
s.eat(10);
}
被覆盖了
规则:
方法名称,参数列表,返回值类型相同或是其子类
访问权限修饰符不能严与父类
注意事项:
父类中的私有的方法不能被重写
构造方法不能被重写
子类重写父类方法时,访问权限不能更低
重载和重写的区别
重载方法定义:
同一个类中
方法名称相同
参数列表不同
返回值和访问权限修饰符没有关系
| 位置 | 方法名 | 参数列表 | 返回值 | 访问权限修饰符 | |
| 方法重写 | 子类 | 相同 | 相同 | 相同或子类 | 不能严与父类 |
| 方法重载 | 同类 | 相同 | 不同 | 没有关系 | 没有关系 |
final关键字
final关键字可用于修饰类、变量和方法,它有“不可更改”或者“最终”的含义
特性:
1、final修饰的类不能被继承。
2、final修饰的方法不能被子类重写。
3、final 修饰的变量(成员变量和局部变量)是常量,只能赋值一次,之后就不能改变了,常量名大写



成员变量:在定义时必须给初始值
局部变量:可以在使用之前赋值
修饰方法:
他修饰的方法是不能重写改方法的



浙公网安备 33010602011771号