Java面向对象编程:继承与多态实战案例
在Java面向对象编程中,继承和多态是两个核心概念。下面我将通过几个实战案例来帮助理解。
- 基础类(抽象类):
- 抽象类:不能直接实例化,用于创建子类。
abstract class Animal {
public void sound() {
System.out.println("Animal sound");
}
}
- 抽象类:不能直接实例化,用于创建子类。
- 具体类继承抽象类:
- 子类继承父类,可以重写父类方法。
class Dog extends Animal {
@Override
public void sound() {
System.out.println("Dog bark");
}
}
- 子类继承父类,可以重写父类方法。
多态应用:
创建接口或抽象类来实现多态。
interface Shape {
void draw();
}
class Circle implements Shape {
@Override
public void draw() {
System.out.println("Drawing a circle");
}
}
class Rectangle implements Shape {
@Override
public void draw() {
System.out.println("Drawing a rectangle");
}
}
public static void main(String[] args) {
Shape shape1 = new Circle();
Shape shape2 = new Rectangle();
// 多态应用,根据Shape引用的对象调用方法
shape1.draw(); // 输出 "Drawing a circle"
shape2.draw(); // 输出 "Drawing a rectangle"
}
以上案例展示了Java面向对象编程中继承和多态的应用。通过继承实现类间的关系,而多态则使得代码更加灵活和可扩展。
还没有评论,来说两句吧...