Java--接口(interface)

「爱情、让人受尽委屈。」 2023-10-17 10:49 179阅读 0赞

接口概述
狭义:指Java中的interface
广义:对外提供规则的都是接口
接口特点
(1)接口使用关键字interface表示
interface 接口名 {}
(2)类实现接口使用implements表示
class 类名 implements 接口名 {}
(3)接口不能实例化:以多态方式来实例化
(4)接口子类
[1]可以是抽象类,但意义不大
[2]可以是具体类,重写接口中的所有抽象方法(极度推荐)
成员变量:只能是常量,并且是静态的公共的
默认修饰符:public static final
构造方法:接口没有构造方法
成员方法:只能是抽象方法
默认修饰符:public abstract

类与类,类与接口,接口与接口关系
(1)类与类
继承关系,只能单继承,可以多层继承(往上继承,继承父类,超父类,基类)
(2)类与接口
实现关系,可以单实现,也可以多实现
且可以在继承一个类的同时实现多个接口
(3)接口与接口
继承关系,可以单继承,也可以多继承

抽象类和接口区别
(1)成员区别
[1]抽象类
成员变量:可以变量,也可以常量
构造方法:有
成员方法:可以抽象,也可以非抽象
[2]接口
成员变量:只可以常量
成员方法:只可以抽象
(2)关系区别
[1]类与类
继承,单继承
[2]类与接口
实现,单实现,多实现
[3]接口与接口
继承,单继承,多继承
(3)设计理念区别
[1]抽象类 被继承体现的是“is a”关系。抽象类中定义的是该继承体系的共性功能

[2]接口 被实现体现的是“like a”关系。接口中定义的是继承体系的扩展功能

  1. class Interface{
  2. public static void main(String[] args){
  3. // Inter i = new Inter(); //接口不能实例化,因为调用抽象方法没有意义
  4. Inter i = new InSon();
  5. i.print();
  6. InterB iB = new InSon();
  7. iB.printB();
  8. }
  9. }
  10. interface Inter{
  11. public static final int num = 10;
  12. //public Inter(){}; //接口中没有构造方法
  13. //public void println(){}; //接口中不能定义非抽象方法
  14. public abstract void print(); //接口中的方法都是抽象类
  15. }
  16. interface InterB{
  17. public abstract void printB(); //接口中的方法都是抽象类
  18. }
  19. // 可以单继承,也可以多继承
  20. interface InterC extends Inter,InterB{
  21. }
  22. //类与接口,实现关系,可以单实现,也可以多实现
  23. class InSon implements Inter,InterB{
  24. public void print(){
  25. // num = 15;
  26. System.out.println("输出Inter");
  27. }
  28. public void printB(){
  29. System.out.println("输出InterB");
  30. }
  31. }

Center

发表评论

表情:
评论列表 (有 0 条评论,179人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Java接口interface

    接口只有规范,自己无法写方法。 接口就是规范,定义的是一组规则。 接口的本质是契约,就像法律一样,制定好后大家都遵守 OO的精髓,是对对象的抽象,最能体

    相关 java 接口interface

    1、 接口的概念 抽象类可以理解为是从多个类中抽象出来的模板,不但允许有抽象方法,还可以有变量和普通方法等。如果抽象的更彻底,只留下常量和抽象方法,则此时的抽象类有了

    相关 interface接口

    当类中的方法都是抽象方法, 接口格式特点: 1、接口中可以定义常量和抽象方法。 2、接口中成员有固定修饰符:       常量:public static final 

    相关 接口interface

    什么是接口? 一种把类抽象的更彻底,接口里只能包含抽象方法的“特殊类”。接口不关心类的内部状态数据,定义的是一批类所遵守的规范。(它只规定这批类里必须提供某些方法,提供这