Java面向对象编程:继承与多态的实例
在Java面向对象编程中,继承和多态是两个核心概念。
- 继承:
继承是子类能够直接使用父类的方法和属性。一个类(子类)可以继承另一个类(父类)的所有非私有(public、protected)成员。
例如:
// 父类
class Animal {
void speak() {
System.out.println("Animal speaks");
}
}
// 子类
class Dog extends Animal {
@Override
void speak() {
System.out.println("Dog barks");
}
}
- 多态:
多态是指一个接口(抽象方法)可以被不同的子类实现,使得子类既能继承父类的属性和行为,又能有自己的特性。
多态主要通过方法重写(Override)和方法参数化(Polymorphism)来实现:
方法重写:子类在继承父类的基础上,对父类中非私有方法进行定义,使其与父类中的版本有所区别。如上例的Dog类的speak()方法。
方法参数化(多态调用):当使用基类引用调用子类的方法时,会根据实际的对象类型来执行对应的方法。这是通过Java的运行时检查实现的。
总的来说,继承是面向对象中的一种“代码共享”,而多态则是在继承的基础上,实现了不同类型的对象可以对同一消息作出响应的能力。
还没有评论,来说两句吧...