Java面向对象编程:类继承与多态问题实例展示

原创 本是古典 何须时尚 2024-11-29 02:12 118阅读 0赞

在Java中,面向对象的特性主要体现在类的继承和多态性上。以下我们将通过实例来详细理解这两点。

  1. 类继承

例子:假设我们有一个动物基类(Animal),然后有狗(Dog)和猫(Cat)子类。

  1. // Animal基类
  2. class Animal {
  3. void eat() {
  4. System.out.println("Animal eats");
  5. }
  6. }
  7. // Dog子类继承Animal基类
  8. class Dog extends Animal {
  9. void bark() {
  10. System.out.println("Dog barks");
  11. }
  12. }
  13. // Cat子类继承Animal基类
  14. class Cat extends Animal {
  15. void purr() {
  16. System.out.println("Cat purrs");
  17. }
  18. }
  1. 多态性

多态性主要体现在方法重写(Override)和方法覆盖( hiding )。

  • 方法重写:在子类中,如果父类中有相同名称的方法,并且子类想改变父类该方法的行为,就需要进行重写。
  1. // Dog子类重写Animal基类eat方法
  2. class Dog extends Animal {
  3. @Override
  4. void eat() {
  5. System.out.println("Dog eats dog food");
  6. }
  7. }
  • 方法覆盖:在子类中,如果父类中有相同名称的方法,并且方法的参数列表不同(即返回类型或形参不完全相同),那么子类可以定义一个与父类同名但参数不同的方法,这种现象称为方法覆盖。

注意:在多态性应用中,Java使用关键字final来声明具有方法重写特性的方法。如果某个方法被声明为final,则子类不能对该方法进行重写。

文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 0 条评论,118人围观)

还没有评论,来说两句吧...

相关阅读