方法重写概述及其应用
方法重写:子类中出现了和父类中一模一样的方法声明(方法名,参数列表,返回值类型),也被称为方法覆盖,方法复写。
应用:当子类需要父类的功能,而功能主体子类有自己特有内容时,可以重写父类中的方法。这样,即沿袭了父类的功能,又定义了子类特有的内容。
代码演示
public class MyTest {
public static void main(String[] args) {
Phone phone = new Phone();
Phone1 phone1 = new Phone1();
phone.call();
phone1.call();
}
}
public class Phone {
public void call(){
System.out.println("打电话");
}
}
public class Phone1 extends Phone {
@Override
public void call() {
System.out.println("打完电话后,可以听天气预报");
}
}
运行结果如下:

注意事项:
a:父类中私有方法不能被重写,因为父类私有方法子类根本就无法继承
b:子类重写父类方法时,访问权限不能更低,最好就一致
c:父类静态方法,子类也必须通过静态方法进行重写,子类重写父类方法的时候,最好声明一模一样。
final关键字
由于继承中有一个方法重写的现象,而有时候我们不想让子类去重写父类的方法.这对这种情况java就给我们提供了一个关键字: final
final关键字是最终的意思,可以修饰类,变量,成员方法。
final修饰特点:
修饰类: 被修饰类不能被继承
修饰方法: 被修饰的方法不能被重写
修饰变量: 被修饰的变量不能被重新赋值,因为这个量其实是一个常量
final 修饰时:
基本类型,是值不能被改变
引用类型,是地址值不能被改变
本文详细介绍了Java中方法重写的基本概念和应用场景,通过代码示例展示了子类如何通过重写父类方法来实现功能扩展。同时,讨论了final关键字的作用,包括防止类被继承和方法被重写。
16万+

被折叠的 条评论
为什么被折叠?



