HandledEvents is static because I can easily read values from it using reflection and without Activator.CreateInstanceandledEvents can be easily removed from FlightEventProcessor and nothing will happens. compilator allows me to not implement this array inside every classes that inherit IEventProcessor