Web
Analytics
Generic Class in C# with example | Angular | ASP.NET Tutorials

For Consultation : +91 9887575540

Stay Connected :

Generic Class in C#

Generic classes in C# was introduced in C# 2.0. A generic class is introduced for type safety. Using generics, C# class may work as a placeholder for any data type. Angle brackets are used to define generic class in C#. Good understanding of generics is necessary to understand various designing patterns.

Here we can see a very simple example of generic.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CSharp_Test
{
    class Program
    {
        static void Main(string[] args)
        {
            myclass obj = new myclass { id = 1, name = "yogesh" };
            List<myclass> obj1 = new List<myclass>
            {
                new myclass{ id=1, name="yogesh" },
                new myclass{ id=2, name="yogesh1" },
                new myclass{ id=3, name="yogesh2" }
            };
            genclass<int> obj5 = new genclass<int>(20);
            Console.WriteLine("Generic Variable is "+obj5.genvariable);
            genclass<string> obj6 = new genclass<string>("ceg123");
            Console.WriteLine("Generic Variable is with string " + obj6.genvariable);
            genclass<myclass> classobj = new genclass<myclass>(new myclass { id=12, name = "Vikas Sharma" });
            Console.WriteLine("Generic Variable of class is with string " + classobj.genvariable.id+" "+classobj.genvariable.name);
            foreach (var obj2 in obj1)
            {
                Console.WriteLine(obj2.name);
            }
            Console.ReadLine();
        }
    }
    class myclass
    {
        public string name;
        public int id;
    }
    public class genclass<T>
    {
        public T genvariable;
        public genclass(T value)
        {
            this.genvariable = value;
        }
        public T generimethod()
        {
            return this.genvariable;
        }
       
    }
}

Generics classes are used for code reusability. T is used as a placeholder. It improves the performance of the program due to the unavailability of boxing and unboxing.