我在Java中有关于“接口”的问题,问题听起来像这样:
在班级中实施空白(空)界面有什么用?
为了更好地理解这个问题,我将给你一个具体的例子:
如果你去看看“ ArrayList ”类的实现,你会发现它实现了两个接口(RandomAccess和Cloneable),它们实际上是完全空的!
为什么会这样? 通过为我的班级实现一个完全空白的界面,我能获得什么?
如果您有任何想法,请发表评论。
提前谢谢。
答案 0 :(得分:7)
这些接口称为标记接口(用于标记该类型的类),在运行时它们用于检查类型。
前者
在运行程序时,内部逻辑可能就像
if (yourList instanceof Cloneable) {
// Hey this object is of type Clonable, please proceed
} else {
// Not that type. Reject
}
答案 1 :(得分:1)
这些接口仅用于不同的和识别实例,请考虑以下事项:
if (foo is MyInterface1) ...
消耗代码:
{{1}}