在Java9+版本中,接口的内容:
成员变量其实是常量,格式:[public][static][final]数据类型常量名称=数据值注意:常量必须进行复制,而且一旦赋值不能改变常量名称完全大写,用下划线进行分割
接口中最重要的是抽象方法,格式:[public][abstract]返回值类型方法名称;注意:实现类必须覆盖重写所有的抽象方法,除非实现类是抽象类
从Java8开始,接口里允许定义默认方法,格式:[public][default]返回值类型方法名称{方法体}注意:默认方法也可以被覆盖重写
从Java8开始,接口里允许定义静态方法,格式:[public][static]返回值类型方法名称{方法体}注意:应该通过接口名称进行调用,不能通过实现类对象调用接口静态方法
从Java9开始,接口允许定义私有方法,格式:普通私有方法:private返回值类型方法名称{方法体}静态私有方法:privatestatic返回值类型方法名称{方法体}注意:private方法只有接口自己才可以调用,不能被实现类或别人使用
使用接口的时候,需要注意:接口是没有静态代码块或者构造方法的一个类的直接父类是唯一的,但是一个类可以同时实现多个接口格式:publicclassMyInterfaceImplimplementsMyInterfaceA,MyInterfaceB{//覆盖重写所有抽象方法}如果实现类所实现的多个接口当中,存在重复的抽象方法,那么只需要覆盖重写一次即可④如果实现类没有覆盖重写所有接口当中的所有抽象方法,那么实现类就必须要是一个抽象类⑤如果实现类所实现的多个接口当中,存在重复的默认方法,那么实现类一定要对冲突的默认方法进行覆盖重写⑥一个类如果直接使用父类当中的方法,和接口当中的默认方法产生冲突,优先使用父类当中的方法
接口与类之间的关系:类与类之间是单继承的,直接父类只有一个类与接口之间是多实现的,一个类可以实现多个接口接口与接口之间是多继承的
注意事项:多个父接口中的抽象方法如果重复,没关系多个父接口中的默认方法如果重复,那么子接口必须进行默认方法的重写,而且带着default关键字
文章为作者独立观点,不代表 股票程序化软件自动交易接口观点