下面要给大家分享的是一道比较常见的Java面试题,是和java接口的修饰符有关的内容,下面一起来看一下具体的题目以及答案解析吧。
1、题目
Java接口修饰符可以有?
A、private
B、protected
C、final
D、abstract
2、答案
C和D
3、解析
接口用来描述系统对外提供的所有服务,所以,接口当中的成员常量以及方法都一定得是公开类型的(public),以此来确保外部使用者可以访问它们;
接口仅仅只可以描述系统可以做什么,而不能够指明要怎样去做,所以说,接口当中的方法都是抽象方法(abstract);
接口不涉及和任何具体实例相关的细节,所以,接口没有构造方法,不可以被实例化,没有实例变量,只有静态变量(static)
接口的中的变量是所有实现类共有的,那么既然是共有的话,就一定是不会变的东西了,因为,变化的东西也不可以被算作是共有,所以的话,变量是不可变类型(final),也就是常量。
那么为什么接口当中不可以定义变量的原因是什么呢?
接口当中,不可以出现变量,假如有变量的话,那么就和接口提供的统一的抽象这种思想是抵触的,所以说,接口当中的属性必然是常量,只可以读不可以改,这样,才可以为实现接口的对象提供一个统一的属性。
so-接口的方法默认为public abstract;
接口当中,不能够定义变量,也就是定义的变量之前,都要加上final修饰,使得它成为常量,所以说,接口的属性默认是public static final常量,并且必须须赋初值。
更多java面试宝典,请继续通过奇Q工具网来了解吧!
推荐阅读: