当前位置:网站首页 > Java教程 > 正文

java菜鸟教程继承



在本教程中,我们将借助示例学习Java中的继承。

继承是OOP(面向对象编程)的重要功能之一,它使我们能够从现有类中定义一个新类。例如,

在Java中,我们使用extends关键字从类继承。在这里,我们从Animal类继承了Dog类。

Animal是超类(父类或基类),而Dog是子类(子类或派生类)。 子类继承超类的字段和方法。

Java继承简介

继承是is-a关系,只有当两个类之间存在is-a关系时,我们才使用继承。

这里有些实例:

输出结果

在这里,我们从父类Animal继承了Dog的子类。 Dog类从Animal类继承了eat()和sleep()方法。

因此,Dog类的对象可以访问Dog类和Animal类的成员。

在Java继承中,子类的对象可以调用超类的成员。

我们在先前的教程中了解了private和public访问修饰符。

您还可以设置方法和字段为protected,受保护的成员可以访问

这是可以访问访问修饰符的摘要。

输出结果

这是可行的,因为Animal和Main类都在同一个包(同一个文件)中。

从上面的示例中,我们知道子类的对象也可以访问其超类的方法。

如果在超类和子类中都定义了相同的方法,会发生什么情况?

好吧,在这种情况下,子类中的方法将覆盖超类中的方法。例如,

输出结果

在这里,eat()同时出现在超类Animal和子类Dog中。我们创建了子类Dog的对象dog1。

当我们使用dog1对象调用eat()时,将调用Dog内部的方法,而不调用超类的相同方法。这称为方法重写。

在上面的程序中,我们使用了@Override 注释来告诉编译器我们正在重写方法。但是,这不是强制性的。在下一个教程中,我们将详细了解方法重写。

如果需要从Animal的子类调用eat()方法,则使用super关键字。

输出结果

在这里,我们使用了super关键字通过super()来调用构造函数。 另外,我们使用super.eat()调用Animal超类的eat()方法。

注意:调用构造函数和super方法时使用的区别。要了解更多信息,请访问Java super关键字

继承有五种类型。

版权声明


相关文章:

  • java事件驱动教程2025-01-29 20:26:03
  • java反射详解教程2025-01-29 20:26:03
  • mysql与java菜鸟教程2025-01-29 20:26:03
  • java 在线教程2025-01-29 20:26:03
  • java做小插件教程2025-01-29 20:26:03
  • java 微信公众号开发教程2025-01-29 20:26:03
  • 高级java 教程2025-01-29 20:26:03
  • java教程题全集2025-01-29 20:26:03
  • 郑州网上java教程2025-01-29 20:26:03
  • java008作业教程2025-01-29 20:26:03