2012-05-14 2 views
5

Po prostu zaczynam utrzymywać projekt Java MVC, który korzysta z Java Guice Framework.Jaki jest cel używania pustego interfejsu, który rozszerza inny w Javie?

W prawie całym kodzie pierwsi programiści przekazali jako parametr pusty interfejs modelu , rozszerzając kolejny interfejs o.

Oto pierwsza Interfejs:

public interface FooModel extends ModelInterface { 

} 

A drugi interfejs:

public interface ModelInterface { 
     public void addListener(FooListener fooListener); 
     void setFoo(boolean blop); 
     boolean isFoo(); 
    } 

To nie ma żadnego sensu dla mnie.

Czy istnieje dobry powód/wzór użycia pustego interfejsu, w Javie? Może dla Guice?

Odpowiedz

7

Here jest dobrym motywem "znacznik" interfejsów. Są one szczególnie użyteczne w programowaniu zorientowanym na aspekt, w którym dają punkt, do którego można się przyczepić (i domyślam się, że Guice jest właśnie taką strukturą).

3

Jedynym powodem dla którego używam pustego interfejsu jest interfejs znacznika. Istnieje kilka przykładów takich jak java.lang.Cloneable lub Serializable.