接口能否 继承接口,能否继承多个? 试举例

能继承多个接口


例如,在 poi-3.14-20160307.jar 中, 有一个接口 Workbook, 同时继承 Closeable, Iterable<Sheet>两个接口。



接口继承和实现继承可以通过一个简单的例子来说明。 假设我们有一个动物类 Animal,它有一个抽象方法 makeSound(),用于发出声音。我们还有两个具体的动物类,狗类 Dog 和猫类 Cat,它们都继承自 Animal 类。 1. 接口继承: 我们可以定义一个接口 CanFly,其中包含一个方法 fly(),表示动物可以飞行。现在我们希望狗和猫都能实现 CanFly 接口,但它们并不需要实现 fly() 方法。这时,我们可以使用接口继承来实现这个需求。 ```java interface CanFly { void fly(); } class Dog extends Animal implements CanFly { public void makeSound() { System.out.println("Woof!"); } public void fly() { // 狗无法飞行,所以这里可以不做任何处理 } } class Cat extends Animal implements CanFly { public void makeSound() { System.out.println("Meow!"); } public void fly() { // 猫无法飞行,所以这里可以不做任何处理 } } ``` 在上面的例子中,Dog 和 Cat 类都实现了 CanFly 接口,但它们并没有提供具体的实现。这样,我们可以通过接口继承来表达狗和猫都能飞行的概念,并在需要时使用这个接口。 2. 实现继承: 假设我们有一个具体的动物类 Bird,它继承自 Animal 类,并且重写了 makeSound() 方法。 ```java class Bird extends Animal { public void makeSound() { System.out.println("Chirp!"); } } ``` 在这个例子中,Bird 类通过实现继承继承了 Animal 类的属性和方法,并且可以根据自己的需求重写 makeSound() 方法。这样,Bird 类就具备了 Animal 类的行为,并且可以进一步扩展或修改。 总结: 接口继承用于表示类具备某些行为,但不需要提供具体实现;实现继承用于继承父类的属性和方法,并且可以在此基础上进行修改或扩展。通过这两种继承方式,我们可以实现代码复用、多态性以及更灵活的设计。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值