Junior — Middle
Hoe wordt de interface Consumer in Java geïmplementeerd en functioneert deze voor het verwerken van berichten?
sobes.tech AI
Antwoord van AI
In C# bestaat de interface Consumer op zich niet, maar het concept van berichtverwerking wordt vaak geïmplementeerd via delegates, interfaces met een verwerkingsmethode of via ingebouwde typen zoals Action<T>.
Als we het hebben over berichtverwerking, wordt meestal een interface gemaakt met een methode die het bericht accepteert en de benodigde acties uitvoert:
public interface IConsumer<T>
{
void Consume(T message);
}
public class MessageConsumer : IConsumer<string>
{
public void Consume(string message)
{
Console.WriteLine($"Ontvangen bericht: {message}");
// berichtverwerking
}
}
Werking:
- Een object dat
IConsumer<T>implementeert, ontvangt het bericht via de methodeConsume. - Binnen de methode wordt de verwerkingslogica geïmplementeerd — bijvoorbeeld, opslaan in een database, andere services aanroepen, enzovoort.
In sommige bibliotheken (bijvoorbeeld voor werken met berichtwachtrijen) is Consumer een component dat zich abonneert op de stroom van berichten en de verwerkingsmethode aanroept bij ontvangst van nieuwe gegevens.