Covariance and Contra-variance
What is covariance and contra-variance in .NET Framework 4.0 with example for each.
Expert
In .NET 4.0, CLR supports contra variance and covariance of types in the generic interfaces and delegates.
Covariance allows you to cast the generic type to its base types, that is, instance of type IEnumerable<Tl> can be assigned to a variable of type IEnumerable<T2> where, T1 derives from T2. For example, IEnumerable<string> str1= new List<string> (); IEnumerable<object> str2= str1;
Contravariance permits you to assign a variable of Action<base> to a variable of type Action<derived>. For illustration, IComparer<object> obj1 = GetComparer() IComparer<string> obj2 = obj1;
.NET framework 4.0 uses some language keywords (out and in) to annotate contra- variance and covariance. “Out” is used for covariance, while “in” is used for contra-variance. Variance is applied only to generic interfaces, reference types and generic delegates. These cannot be applied to generic types and value types.
Distinguish the term Classic ASP as well as ASP.Net?
Write down the use of console application in brief?
Illustrate Queues and Stacks?
Illustrate in .NET about different types of directives?
Explain the types of deployment models which are used in the cloud?
Write the name of the method which is used to create a click event of Control class for Button control in C#?
State some differences between the ComboBox control and a ListBox control?
What are the rules and regulations which should be followed while creating the well-formed XML document?
Can the 'throws' clause can be used to raise an exception?
Name some classes which is utilized to handle standard menu in MenuStrip control.
18,76,764
1945661 Asked
3,689
Active Tutors
1426724
Questions Answered
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!