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.
What is the basic difference between a content page and a master page?
Write down the ToolTipService timing properties in the WPF?
Explain about the AJAX Control Extender Toolkit.
State the two most important categories which distinctly categorize variables of C# programs.
Is it a good practice to practise handle the exceptions in code?
Illustrate the benefit of option strict on? Describe in brief.
Explain the use of a CommandBuilder class?
Describe the differences between the Server-side and Client-side code?
Illustrate the difference between System.Windows.dll and System.Windows.Browser.dll?
Mention the basic steps to perform the LINQ query.
18,76,764
1926864 Asked
3,689
Active Tutors
1429992
Questions Answered
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!