3

扩展一个空接口是否正确?我只需要一个方法(EventPlayer)和一个参数(EventCLass myEvent),它可能一次是一个类,下一次是另一个类。

public interface EventClass {
  // ... empty ...
}

public interface EventClassExt1 extends EventClass {

    public void firstEvent();

    public void secondEvent();
}


public interface EventClassExt2 extends EventClass {

    public void thirdEvent(String text);
}

public EventPlayer(final EventCLass myEvent) 
4

3 回答 3

2

是的,这是正确的。它被称为标记接口

http://en.wikipedia.org/wiki/Marker_interface_pattern

于 2013-01-22T09:53:41.803 回答
2

是的,这样做是可以的。

当接口没有方法时,一般称为标记接口Serializable是 JDK 中此类接口的众多示例之一。

此外,您可能不希望接口名称中出现“类”。只是Event更好的选择。

于 2013-01-22T09:54:56.837 回答
1

扩展一个没有其他对象的类是否正确?

我假设你的意思是一个空的接口。

这是在 Java 中使用很多的东西,在他们有注解来签署一个类是那种类型(从 Java 5 开始)之前。

您所做的是正确的-基本上您正在标记扩展接口/类类型,EventClass但我会使用注释,这是执行此操作的新方法

http://tutorials.jenkov.com/java-reflection/annotations.html

于 2013-01-22T09:54:07.077 回答