java

来源:互联网 发布:优酷网络电影合作 编辑:程序博客网 时间:2024/06/03 21:17

interface 接口
* implements 实现
* 接口中的方法默认是抽象方法. public abstract
* 接口中的变量默认是静态常量,public static final 修饰
*
* 抽象类中不一定有抽象方法,但有抽象方法的类一定是抽象类.
* 抽象类有构造函数,但是不能调用
*
* 类只能实现单继承,但是接口可以实现多继承(多实现)
*
* 为什么抽象类有构造方法,而接口没有
* 构造方法提供了实例化一个具体东西的入口,而接口是用来表述动作,表述规范的,所以,接口要构造方法没有意义
* 接口是为相关的实体对象提供交流的工具,也是一个对功能比较清晰,细节实现模糊的动作的抽象概念.
* 接口中不能定义任何方法体,即使是空的方法体.虽然接口也可以有数据成员(public static final 类型)
* 但 这很少使用,而且接口的数据域成员是无法被继承下来的,接口的约束非常强.使用时直接 接口名.数据成员
*
*
* 抽象类和接口的异同点
* 相同点: 都是不断向上抽取而来的
* 不同点:
* 1, 抽象类需要被继承,而且只能单继承
* 接口需要被实现 ,而且可以多实现
* 2, 抽象类中可以定义抽象方法和非抽象方法,子类继承后可以直接使用非抽象方法,
* 接口只能定义抽象方法,必须由子类去实现,
* 3, 抽象的继承是is-a 关系,在定义该体系的基本共性内容.
* 接口的实现是has-a 关系,在定义额外功能,
*
* 在什么时候定义接口
* 最基本的内容 建议定义为类,扩展的内容建议定义为接口
*
*/

0 0
原创粉丝点击