Java 接口
Posted 假装有知识
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 接口相关的知识,希望对你有一定的参考价值。
关键字:interface
声明方法:
访问修饰符 interface 接口名 (extends 其他接口名){
//变量
//方法
}
接口支持多继承, 声明方法类似c++
标记接口:
定义: 没有任何方法和属性的接口,仅表明它的类属于一个特定的类型,供其他代码来测试允许做一些事情.
作用:
- 建立一个公共的父接口,整合由其他接口定义的方法.
- 像一个类中添加数据类型
与类的相似点:
- 一个接口可有多种方法.
- 接口文件保存在.java结尾的文件中,文件名用接口名
- 接口的字节码保存至.class结尾的文件中
- 接口相应的字节码文件必须在与包名相匹配的目录结构中
与类的区别:
- 不能用于实例化对象
- 没有构造方法
- 所有方法必须的抽象类
- 不能包含除static和final之外的成员变量.
- 不是类类继承,而是被类实现
- 支持多继承
特性:
- 接口中每一个方法也是隐式抽象的, 默认指定为public abstract(也只能是 public abstract)
- 接口中可以含有变量,隐式指定为public static final(并只能是public的,用private 修饰会编译报错)
- 接口中的方法不能在接口中被实现,只能由实现接口的类实现其中的方法
- 接口是隐式抽象的,声明一个接口时不必使用abstract关键字
- 接口中所有方法都是共有的,同样隐式抽象,不必使用abstract关键字
抽象类和接口的区别:
- 抽象类中可以有方法体,但接口中不行
- 抽象类中的成员变量可以是各种类型的,但是接口中的成员变量只能是public static final 的
- 接口中不能含有静态代码块及静态方法(用static修饰的方法),但是抽象类中可以.
- 一个类只能继承一个抽象类,但是一个类可以实现多个接口.
以上是关于Java 接口的主要内容,如果未能解决你的问题,请参考以下文章