方法重写
1.方法重写概述
子类中出现了和父类中一模一样的方法声明,也被称为方法覆盖,方法重写
使用特点:
如果方法名不同,就调用对应的方法
如果方法名相同,最终使用的是自己的
2.方法重写的应用
当子类需要父类的功能,而功能主体子类有自己特有的内容时,可以重写父类中的方法,这样,即沿袭了父类的功能,又定义了子类特有的内容
3.方法重写的注意事项
1)父类中私有方法不能被重写
2)子类重写父类方法的时候,访问权限不能更低
建议:以后子类重写父类的方法的时候,权限修饰符写一样的就不会发生这样的问题了
3)父类中静态的方法不能被重写,也就是说不能被Override修饰,因为静态的是属于类本身的东西
方法重载和方法重写的区别
1.方法重载:Overload
发生在同一个类中,出现的方法名一致,参数列表不一致的现象
2.方法重写:Override
发生在继承关系的子类中,出现和父类中方法声明一模一样的方法,实现不一样的现象
class OldPhone {
private String name;
public void call(String name) {
System.out.println("打电话给" + name);
}
public static void play() {
System.out.println("玩俄罗斯方块");
}
}
class NewPhone extends OldPhone {
@Override
public void call(String name) {
super.call(name);
System.out.println("看抖音");
}
}
public class ExtendsDemo1 {
public static void main(String[] args) {
NewPhone newPhone = new NewPhone();
newPhone.call("小王");
}
}