Java面向对象编程:继承与多态问题案例

原创 港控/mmm° 2024-09-26 13:30 176阅读 0赞

在Java的面向对象编程中,继承和多态是两个重要的概念。下面我会通过实际案例来解释这两个概念。

继承案例

  1. // 定义一个基类 Animal
  2. public class Animal {
  3. public void eat() {
  4. System.out.println("Animal is eating");
  5. }
  6. }
  7. // 定义一个派生类 Dog,继承自Animal
  8. public class Dog extends Animal {
  9. // 在Dog类中添加新的方法或重写父类的方法
  10. public void bark() {
  11. System.out.println("Dog is barking");
  12. }
  13. // 调用父类的eat方法
  14. @Override
  15. public void eat() {
  16. super.eat(); // 调用父类的方法
  17. System.out.println("Dog is eating too");
  18. }
  19. }
  20. // 测试代码
  21. public class Main {
  22. public static void main(String[] args) {
  23. Dog dog = new Dog();
  24. dog.eat(); // 调用狗的eat方法
  25. dog.bark(); // 调用狗的bark方法
  26. }
  27. }

在这个例子中,Dog类继承了Animal类。这种继承关系使得Dog类能够保留和使用Animal类的方法。

多态案例

  1. // 无继承,但通过接口实现多态
  2. interface Mammal {
  3. void eat();
  4. }
  5. class Dog implements Mammal {
  6. @Override
  7. public void eat() {
  8. System.out.println("Dog is eating");
  9. }
  10. }
  11. public class Main2 {
  12. public static void main(String[] args) {
  13. Mammal mammal = new Dog(); // 将Dog实例赋值给Mammal类型的引用
  14. mammal.eat(); // 调用Mammal接口的方法,由于Dog实现了这个接口,所以表现多态
  15. }
  16. }

在这个例子中,Dog类并没有直接继承Mammal类,但是Dog类通过实现Mammal接口,达到了对父类型方法的使用和调用。

这就是Java面向对象编程中的继承与多态问题的简单理解以及实际应用案例。

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

发表评论

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

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

相关阅读