java – 可以标记接口,如serializable包含默认方法?

前端之家收集整理的这篇文章主要介绍了java – 可以标记接口,如serializable包含默认方法?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_301_1@我认为它不能,因为标记界面的原则是没有任何方法,但由于默认方法不是抽象的我不知道.

解决方法

就像 Java一样,“Marker”界面只是一个常规的界面.因此,它可以具有与任何(Java-8)接口一样的默认方法.

现在,关于这是否违反了Marker界面的原则,我不得不说是的.标记界面应该作为一种标志,仅标识一个类符合一些外部标准.现在,它可以是一个Marker界面,并且具有抽象/默认方法,但它将不再纯粹符合定义.

从有效的Java(第二版):

A marker interface is an interface that contains no method declarations,but merely designates (or “marks”) a class that implements the interface as having some property.

猜你在找的Java相关文章