Piano un attimo, CTRL-ALT-CANC.

Sull'ereditarietà sono d'accordo, anche per servizi da esporre all'esterno!
Un esempio pratico è una lista di elementi univoci, potrebbe essere:

codice:
public class UniqueList implements List, Set
perchè è una lista, ma non ammette duplicati

Però, nel caso di web app dove esitono servizi "interni" tipo LoginService che contine tutti i metodo e i componenti per la login, DaoService per accesso al db ecc.
Tutto queste sono classi che io userò solamente nella mia applicazione, nel caso volessi poi esporle dovrei in ogni caso creare le classi apposta per l'EJB.
In questo caso... perchè tutti i servizi (es. LoginService) vanno sempre in coppia con le interfacce?
codice:
public interface LoginService{
   public boolean login(String user,String password);
   public boolean logout();
}

public class LoginServiceImpl implements LoginSerice{
...
}