八、接口

谁都会走 提交于 2020-02-01 18:22:00

一、请问接口的含义是什么?

答:①实实在在的接口类型;②系统对外提供的服务。

二、请问接口的特征是什么?

答:①接口中的成员变量默认都是public,static,final类型的,必须被显式初始化。

②接口中的方法默认都是public,abstract的。

③在jdk8以前的版本,接口只能包含抽象方法。从jdk8开始,允许在接口中定义默认方法和静态方法。接口的实现类既可以直接访问默认方法,也可以覆盖它,重新实现方法。

④接口没有构造方法,不能被实例化。

⑤一个接口不能实现另一个接口,但它可以继承多个其他接口。

⑥一个类只能继承一个直接的父类,但能实现多个接口。

三、请问抽象类与接口的相同点和区别是什么?

答:相同点:

①都不能被实例化;

②都能包含抽象方法,这些抽象方法用于描述系统能提供哪些服务,但不必提供具体的实现。

③从jdk8版本开始,不仅抽象类能为部分方法提供默认的实现,接口也具有该特性。该特性可以避免在子类或者实现类中重复实现方法,这能提高代码的可重用性。

不同点:

①接口中的成员变量只能是public,static,final类型的,而在抽象类中可以定义各种类型的实例变量和静态变量。

②一个类只能继承一个直接的父类;但一个类可以实现多个接口。

四、请问与接口相关的设计模式是什么?

答:①定制服务模式;

②适配器模式;

③代理模式;

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!