Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What are generics in C#? [closed]

Tags:

c#

generics

What are generics in C#, illustrated with a simple example? What are some related articles or websites for this topic?

like image 690
thevan Avatar asked Dec 30 '10 07:12

thevan


People also ask

What are generics in C sharp?

Generics allow you to define the specification of the data type of programming elements in a class or a method, until it is actually used in the program. In other words, generics allow you to write a class or method that can work with any data type.

What is generics explain with an example?

Generics add that type of safety feature. We will discuss that type of safety feature in later examples. Generics in Java are similar to templates in C++. For example, classes like HashSet, ArrayList, HashMap, etc., use generics very well.

What is meant by the term generics?

Explanation: The term generics means parameterized types. Parameterized types are important because they enable us to create classes, structures, interfaces, methods, and delegates in which, the type of data upon which they operate is specified as a parameter.

What is generics in C# with example?

Generic is a class which allows the user to define classes and methods with the placeholder. Generics were added to version 2.0 of the C# language. The basic idea behind using Generic is to allow type (Integer, String, … etc and user-defined types) to be a parameter to methods, classes, and interfaces.


3 Answers

Generics refers to the technique of writing the code for a class without specifying the data type(s) that the class works on.

You specify the data type when you declare an instance of a generic class. This allows a generic class to be specialized for many different data types while only having to write the class once.

A great example are the many collection classes in .NET. Each collection class has it's own implementation of how the collection is created and managed. But they use generics to allow their class to work with collections of any type.

http://msdn.microsoft.com/en-us/library/ms379564(VS.80).aspx

like image 132
Jonathan Wood Avatar answered Oct 07 '22 07:10

Jonathan Wood


There is really nothing special about Generics in C#. C# just likes to take well-known concepts and call them something different (e.g. calling procedures "static methods" or calling flatMap "SelectMany"). In this particular case, Generics are just C#'s name for rank-1 parametric polymorphism.

like image 29
Jörg W Mittag Avatar answered Oct 07 '22 07:10

Jörg W Mittag


From MSDN:

Generics are the most powerful feature of C# . Generics allow you to define type-safe data structures, without committing to actual data types. This results in a significant performance boost and higher quality code, because you get to reuse data processing algorithms without duplicating type-specific code. In concept, generics are similar to C++ templates, but are drastically different in implementation and capabilities.

https://msdn.microsoft.com/en-us/library/ms379564.aspx

like image 3
Rajeev Sharma Avatar answered Oct 07 '22 06:10

Rajeev Sharma