Java基础学习之接口

Java基础学习之接口


一、什么是接口?(自己的理解)

  1. 接口是interface修饰的数据类型,与类相似,访问权限一般是public(我所看到的),其抽象程度比抽象类更抽象,interface接口为了什么样的需求而出现?本身java这种面向对象的编程语言就是为了解决大型、需要分工合作的项目,那么必然会有很多人分工而行,那么一部分人解决的是问题域的分析,设计,为了分工,接口的出现很好的解决了设计与实现的有效分离。

二、接口注意问题

  1. java中接口内只有常量、方法(abstract)
    public stastic final 常量默认的修饰,可不写
    public abstract 方法默认的修饰,可不写
    Java基础学习之接口
  2. 接口,常量的调用(static) (接口名.常量名)
    Java基础学习之接口
    Java基础学习之接口
  3. 接口支持多继承(为什么? 一般多继承对于类的数量庞大造成混乱、耦合度增大,但接口本身比较简单,只有常量、抽象方法
    Java基础学习之接口
  4. 接口同样不能直接实例,可以通过实现类的实例赋给接口的引用(Animal animail = new APInterfaceImpl( );)和动态多态中的up case差不多