在Java中使用扩展另一个的空接口的目的是什么?

Pie*_*ard 6 java interface guice

我刚开始维护一个使用Java Guice Framework的Java MVC项目.

在几乎整个代码中,第一个开发人员作为参数传递一个扩展另一个接口的空模型 接口.

这是第一个界面:

public interface FooModel extends ModelInterface {

}
Run Code Online (Sandbox Code Playgroud)

另一个界面:

 public interface ModelInterface {
        public void addListener(FooListener fooListener);
        void setFoo(boolean blop);
        boolean isFoo();
    }
Run Code Online (Sandbox Code Playgroud)

这对我没有任何意义.

在Java中有没有一个很好的理由/模式使用空接口?也许是为了Guice?

Shi*_*iSi 7

是"标记界面"的一个很好的动机.它们在面向方面的编程中特别有用,它们为您提供了附加点(我猜Guice就是这样一个框架).