是否可以在java中编写我们自己的标记接口.我正在编写类似的代码
public interface MyMarker{
}
Run Code Online (Sandbox Code Playgroud)
那是一个标记界面吗?
如果有可能那么我如何理解JVM这个界面是我自己创建的标记界面?
Jon*_*eet 13
是的,这是一个标记界面.您将测试对象是否"实现"它简单如下:
if (x instanceof MyMarker)
Run Code Online (Sandbox Code Playgroud)
对于您想要的特定类(而不是对象)
if (MyMarker.isAssignableFrom(otherClass))
Run Code Online (Sandbox Code Playgroud)
您应该考虑使用注释而不是标记接口.它们并不总是直接替代,但在许多情况下它们用于相同的目标,而注释(IMO)更清洁.