Describe contra-variance and covariance
Briefly describe contra-variance and covariance in .NET Framework 4.0 and give an example for both?
Expert
In .NET 4.0, the CLR supports contra-variance and covariance of kind in general interfaces and delegates. Covariance allow to cast a generic kind to its base types, that is, we can allot a instance of type IEnumerable<Tl> to a variable of type IEnumerable<T2> where, T1 receives from T2. Such as:
Contravariance permits us to allot a variable of Action<base> to a variable of type Action<derived>. Like:
IEnumerable<string> str1= new List<string> (); IEnumerable<object> str2= str1; IComparer<object> obj1 = GetComparer() IComparer<string> obj2 = obj1
.NET framework 4.0 uses a number of language keywords ‘in and out’ to interpret covariance and contra-variance. ‘Out’ is for covariance, whereas ‘in’ is used for contra-variance.
Variance can be related only to reference types, generic delegates and generic interfaces. These cannot be applied to generic types and value types.
How one can put a border around the picture box?
Elucidate how you create a permanent cookie?
What do you mean by the XOML files?
Write differences between the while and for loop in C#.
What do you mean by the term non_deterministic finalization?
Name the classes that are supported to make the XML DOM?
Explain DataReader object?
What do you know about parameter and explain new types of the parameters introduced in the C# 4.0?
Is it possible to post and access view state in the other application?
Explain what is meant by the IL?
18,76,764
1942583 Asked
3,689
Active Tutors
1445931
Questions Answered
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!