Java中通过extends实现继承,子类可继承父类非私有成员并扩展功能;支持方法重写(@Override)和super调用父类成员或构造器,构造器需用super()初始化父类,且Java仅支持单继承,可通过接口弥补。

在Java中实现继承,主要通过extends关键字让一个类继承另一个类的属性和方法。继承是面向对象编程的三大特性之一,有助于代码复用和建立类之间的层次关系。
使用 extends 关键字
Java中的继承通过extends关键字完成。子类可以继承父类的非私有成员(字段和方法),并可在此基础上扩展功能。
示例:
class Animal { void eat() { System.out.println("动物在吃东西"); }}class Dog extends Animal { void bark() { System.out.println("汪汪叫"); }}
在这个例子中,Dog类继承了Animal类,因此Dog对象可以调用eat()方法。
Dog dog = new Dog();dog.eat(); // 输出:动物在吃东西dog.bark(); // 输出:汪汪叫
重写父类方法(Override)
子类可以对继承来的方法进行重写,以实现不同的行为。需使用@Override注解明确表示意图。
立即学习“Java免费学习笔记(深入)”;
class Cat extends Animal { @Override void eat() { System.out.println("猫吃鱼"); }}
创建Cat对象并调用eat()时,会执行重写后的方法。
访问父类成员(super 关键字)
使用super关键字可以在子类中调用父类的方法或构造器。
class Bird extends Animal { @Override void eat() { super.eat(); // 先执行父类的 eat() System.out.println("鸟在吃虫子"); }}
这适用于需要在子类方法中保留父类逻辑的场景。
构造器的继承与初始化
子类不会自动继承父类的构造器,但可以通过super()调用父类构造器,且必须放在子类构造器的第一行。
class Person { String name; Person(String name) { this.name = name; }}class Student extends Person { int rollNo; Student(String name, int rollNo) { super(name); // 调用父类构造器 this.rollNo = rollNo; }}
基本上就这些。掌握extends、super和@Override,就能在Java中有效使用继承。注意Java不支持多继承(一个类不能继承多个类),但可以通过接口实现类似效果。
以上就是如何在Java中实现继承的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/29369.html
微信扫一扫
支付宝扫一扫