Java 接口

Posted 假装有知识

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 接口相关的知识,希望对你有一定的参考价值。

关键字:interface

声明方法:

访问修饰符 interface 接口名 (extends 其他接口名){

//变量

//方法

}

接口支持多继承, 声明方法类似c++

 

标记接口:
定义: 没有任何方法和属性的接口,仅表明它的类属于一个特定的类型,供其他代码来测试允许做一些事情.

作用:

  1. 建立一个公共的父接口,整合由其他接口定义的方法.
  2. 像一个类中添加数据类型

 

与类的相似点:

  1. 一个接口可有多种方法.
  2. 接口文件保存在.java结尾的文件中,文件名用接口名
  3. 接口的字节码保存至.class结尾的文件中
  4. 接口相应的字节码文件必须在与包名相匹配的目录结构中

与类的区别:

  1. 不能用于实例化对象
  2. 没有构造方法
  3. 所有方法必须的抽象类
  4. 不能包含除static和final之外的成员变量.
  5. 不是类类继承,而是被类实现
  6. 支持多继承

特性:

  1. 接口中每一个方法也是隐式抽象的, 默认指定为public abstract(也只能是 public abstract)
  2. 接口中可以含有变量,隐式指定为public static final(并只能是public的,用private 修饰会编译报错)
  3. 接口中的方法不能在接口中被实现,只能由实现接口的类实现其中的方法
  4. 接口是隐式抽象的,声明一个接口时不必使用abstract关键字
  5. 接口中所有方法都是共有的,同样隐式抽象,不必使用abstract关键字

 

抽象类和接口的区别:

  1. 抽象类中可以有方法体,但接口中不行
  2. 抽象类中的成员变量可以是各种类型的,但是接口中的成员变量只能是public static final 的
  3. 接口中不能含有静态代码块及静态方法(用static修饰的方法),但是抽象类中可以.
  4. 一个类只能继承一个抽象类,但是一个类可以实现多个接口.

 

以上是关于Java 接口的主要内容,如果未能解决你的问题,请参考以下文章

Java_接口

java 接口

Java面向对象:接口的学习

java中接口可以实现多个接口吗

java接口和类有啥区别?

java中接口的定义是啥?