what is “public new virtual void Method()” mean?

new and virtual are two (mostly-) unrelated keywords.

new means it shadows the base method.
virtual allows subclasses to override it.

Calling the method through the interface results in the base method being called, since the base method is not virtual and the derived classes don’t explicitly re-implement the interface (which would cause the method to be re-mapped)

Leave a Comment