在解析某些xml文件的过程中,我遇到了一种情况,我必须使用接口作为标签来识别某些标签属于某个类别,例如,我创建了一个Tag接口来识别这些类用于表示xml标签和ContainableTag指出某些标签可以是某些标签的子标签之一.
然后我偶然发现了这个页面:http://xahlee.org/java-a-day/interface.html(请查看" Interface as Labels "会话.).它说:
问题的关键在于它在语言中是一种数学上无关紧要的东西.作为语言中的标记机制,为了从软件工程角度可能获益,它不应该被设计为类接口的一部分,因为标记的概念和编程接口的概念在语义上是不同的.
那么界面作为标签必然是一种不好的做法?作为一名java程序员,我们还有其他选择吗?