In C#, you can return since version 1.0 more specific types from properties and methods. Of course, object-oriented languages like C## let you do that. When a programming language let’s you express that more specific return type, this is called covariance. And exactly that covariance is added in C## 9.0 for the return types of overridden methods and properties.
#.net #c# #c# 9.0