昨天我在 C# 中遇到了属性,准确地说是[Serializable]
。据我了解,它们像元数据一样使用,以提供有关您的类(class)的一些信息。
此外,我了解到 Java 有“标记接口(interface)”,即没有方法的接口(interface),用于解释类的目的,即标记类的某些特征,例如 可序列化
接口(interface)。
我在想:你能把两者相提并论吗?它们是否相似,甚至相同?
最佳答案
C# 属性更像是 Java 注释。 (我相信这就是 Java 的灵感所在。)
标记接口(interface)是一种 Java 1.0 结构,很少在新代码中使用(如果有的话)。我不觉得它们有用。我不建议恢复这种做法。
Java 接口(interface)应该用于将方法签名(“什么”)的声明与实现(“如何”)分开。它们应该像 C++ 纯虚类,而不是属性或注释。
关于java - 比较 C#'s attributes and Java' s 标记接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23781398/