重写
时间: 2023-12-24 11:03:12 浏览: 55
CSS重写
重写(Override)是面向对象编程中的一个概念,指的是在子类中重新定义(覆盖)父类中已有的方法,以实现子类自己的功能需求。
在Java中,重写方法需要满足以下条件:
1. 方法名必须与父类中被重写的方法名相同;
2. 参数列表必须与父类中被重写的方法的参数列表相同;
3. 返回类型必须与父类中被重写的方法的返回类型相同,或是其子类;
4. 访问权限不能低于父类中被重写的方法的访问权限;
5. 重写方法不能抛出更多的异常,或者更严重的异常,但可以不抛出异常。
下面是一个示例代码:
```java
class Animal {
public void move() {
System.out.println("动物可以移动");
}
}
class Dog extends Animal {
public void move() {
System.out.println("狗可以跑和走");
}
}
public class TestDog {
public static void main(String args[]) {
Animal a = new Animal(); // Animal 对象
Animal b = new Dog(); // Dog 对象
a.move();// 执行 Animal 类的方法
b.move();// 执行 Dog 类的方法
}
}
```
输出结果为:
```
动物可以移动
狗可以跑和走
```
在这个例子中,Animal类有一个move()方法,而Dog类重写了这个方法来实现自己的功能。当执行b.move()时,调用的是Dog类中的move()方法,而不是Animal类中的move()方法。这就是重写的效果。
阅读全文