Java基础--- 接口 Interface

Java基础--- 接口 Interface
  • Interface定义
  • 关于Interfece的成员变量和成员方法
  • 关于Interface的继承
  • Abstract class和interface的区别

Interface定义
  • 因为java中没有多继承(一个子类只能有一个父类),所以提出了接口的概念
  • 接口的本质——接口是一种特殊的抽象类,这种抽象类里面只包含常量和方法的定义,而没有变量和方法的实现.
关于Interfece的成员变量和成员方法
  • Interfce的属性(即成员变量)必须是声明成“public static final 类型,即使默认也是成“public static final”. (因为是static final类型,所以在声明时必须要初始化赋值)
  • Interface中的方法全部为抽象方法,但是不需要使用abstract修饰,并且默认权限也是public
  • Interface中没有构造方法
关于Interface的继承
  • 一个类可以实现多个接口,接口里面的成员变量不专属于某个对象,都是静态的成员变量,是属于整个类的,因此一个类去实现多个接口也是无所谓的,不会存在对象之间互相冲突的问题。实现多个接口,也就实现了多重继承,而且又避免了多重继承容易出现问题的地方(菱形继承),这就是用接口实现多重继承的好处.
  • 当一个类实现多个接口并且需要使用接口的方法时,需要进行类型转换
  • 下图中People同时实现people interface和id interface,
    jobType是people interface的方法,idNumber是ID interface的方法
  • Interface可以继承interface,继承时使用extends 关键字。比如interfaceB继承interfaceA,而实现interfaceB的类必须要implement A和B的所有方法
Abstract class和interface的区别

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/795798.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-06
下一篇 2022-05-06

发表评论

登录后才能评论

评论列表(0条)

保存