Implémentation d’événements de type C # sous Android / Java

Je suis habitué à programmer en C #, et l’une des choses qui me manque à propos de Java, c’est qu’il ne semble pas avoir les fonctionnalités de gestion des événements intégrées de C #:

// define event signature public delegate void SomeEventHandler(); class SomeEventGenerator { // define subscribable event property public event SomeEventHandler SomeEvent; protected void OnSomeEvent() { if (SomeEvent != null) { SomeEvent(); } } } class SomeEventClient { public SomeEventClient(SomeEventGenerator eg) { // subscribe eg.SomeEvent += new SomeEventHandler(eg_SomeEvent); // do some stuff // unsubscribe eg.SomeEvent -= new SomeEventHandler(eg_SomeEvent); } private void eg_SomeEvent() { // handle event } } 

Quel est le meilleur moyen d’obtenir quelque chose de similaire et de léger en Java / Android, qui permette de souscrire / désabonner plusieurs clients d’événements et d’appeler tous les clients abonnés simultanément?

Vous voudriez examiner le concept des auditeurs en Java. J’ai trouvé un très bon article intitulé “C # du sharepoint vue des développeurs Java” que vous voudrez peut-être consulter.

http://www.25hoursaday.com/CsharpVsJava.html