接口之间的继承与重载

接口的继承

  • 概述
    接口与接口之间也可以使用extends进行集成
    例如
package ErrorAndApi;

public interface InterfaceExample {
}
interface InterfaceExample2 extends  InterfaceExample{

}

在这里插入图片描述
和类与类的继承一样,接口与接口之间的继承也可以使用@Override进行验证,仍然无需实现接口中的方法。
比如


package ErrorAndApi;

public interface InterfaceExample {
    void InterFaceExampleFunction();
}
interface InterfaceExample2 extends  InterfaceExample{
    @Override
    void InterFaceExampleFunction();

}

仍然不会报错

在这里插入图片描述接口内的多个抽象方法也可以进行重写,比如

在这里插入图片描述

接口的重载

  • 接口的重载必须在同一个接口中
  • 和类的重载一样,方法名相同,参数列表不同,构成重载

比如

public interface InterfaceExample {
    void InterFaceExampleFunction();

    void InterFaceExampleFunction(String name);
    String InterFaceExampleFunction(String name,int age);
}


并不会报错
在这里插入图片描述接口2继承接口1
那么一个类也可以同时实现接口1,和接口2吗

比如

package ErrorAndApi;

public interface InterfaceExample {
    void InterFaceExampleFunction();

    void InterFaceExampleFunction(String name);
    String InterFaceExampleFunction(String name,int age);
}
interface InterfaceExample2 extends  InterfaceExample{
    void InterFaceExampleFunction();

    void InterFaceExampleFunction(String name);
}
package ErrorAndApi;

public class InterfaceExampleImpl  implements InterfaceExample,InterfaceExample2{
    @Override
    public void InterFaceExampleFunction() {

    }

    @Override
    public void InterFaceExampleFunction(String name) {

    }

    @Override
    public String InterFaceExampleFunction(String name, int age) {
        return null;
    }
}

一个类实现类 一个接口,这个接口继承另外一个接口,
这个内要实现着两个接口的所有接口,无论是否重写的接口,否则会报错

  • 比如

package ErrorAndApi;

public interface InterfaceExample {
    void InterFaceExampleFunction();

    void InterFaceExampleFunction(String name);
    String InterFaceExampleFunction(String name,int age);
    String InterFaceExampleFunction(String name,int age,String s2);
}
interface InterfaceExample2 extends  InterfaceExample{
    void InterFaceExampleFunction();

    void InterFaceExampleFunction(String name);

    void InterFaceExampleFunction2(String name);
}

在这里插入图片描述
必须要实现所有方法

在这里插入图片描述
重载的调用

在这里插入图片描述

调用
在这里插入图片描述
输出
在这里插入图片描述

总结

上面代码定义了两个接口,InterfaceExample和InterfaceExample2。InterfaceExample定义了四个方法,分别是InterFaceExampleFunction()、InterFaceExampleFunction(String name)、InterFaceExampleFunction(String name, int age)和InterFaceExampleFunction(String name, int age, String s2)。InterfaceExample2继承自InterfaceExample,并新增了一个方法InterFaceExampleFunction2(String name)。

需要注意的是,虽然InterfaceExample2继承自InterfaceExample,但是在InterfaceExample2中重新定义的方法InterFaceExampleFunction()和InterFaceExampleFunction(String name)并不会覆盖InterfaceExample中的同名方法。因为接口中的方法默认是抽象的,子接口只是继承了父接口的方法签名,并没有提供具体的实现。所以在实现InterfaceExample2接口时,仍然需要实现InterfaceExample中的方法。

  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

pofenx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值