惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The GitHub Blog
The GitHub Blog
雷峰网
雷峰网
小众软件
小众软件
博客园 - 【当耐特】
J
Java Code Geeks
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Hugging Face - Blog
Hugging Face - Blog
腾讯CDC
Engineering at Meta
Engineering at Meta
aimingoo的专栏
aimingoo的专栏
A
About on SuperTechFans
H
Help Net Security
博客园_首页
P
Proofpoint News Feed
GbyAI
GbyAI
大猫的无限游戏
大猫的无限游戏
N
Netflix TechBlog - Medium
爱范儿
爱范儿
MyScale Blog
MyScale Blog
Blog — PlanetScale
Blog — PlanetScale
The Cloudflare Blog
MongoDB | Blog
MongoDB | Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Google DeepMind News
Google DeepMind News

博客园 - 共同学习,共同进步

SQL Pretty Printer for SSMS 很不错的SQL格式化插件 GOOD LINK C# 代码片段 用简单代码破解Excel保护密码 罗克韦尔自动化(中国)责任有限公司 - 招聘软件开发实习生 思考1 NET Framework Library Source Code Now Available SQL IsEmptyOrNull [笔记] C# 3.0 新特性[3]-Understanding Object Initializers [笔记] C# 3.0 新特性[2]-Understanding Extension Methods [笔记] C# 3.0 新特性[1]-implicitly typed local variables 通用数据库存储过程代码--高效分页存储过程 listview and downloader TFS 2008 - Running two Build Agents on the Same Machine Team Foundation Blog Overview of Team Foundation Build Understanding CGI with C# IEnumerator 是所有非泛型枚举数的基接口 An Introduction to C# Generics
C# Programming Guide
共同学习,共同进步 · 2007-10-24 · via 博客园 - 共同学习,共同进步

C# Programming Guide

Generics are a new feature in version 2.0 of the C# language and the common language runtime (CLR). Generics introduce to the .NET Framework the concept of type parameters, which make it possible to design classes and methods that defer the specification of one or more types until the class or method is declared and instantiated by client code. For example, by using a generic type parameter T you can write a single class that other client code can use without incurring the cost or risk of runtime casts or boxing operations, as shown here:

// Declare the generic class
public class GenericList<T>
{
    void Add(T input) { }
}
class TestGenericList
{
    private class ExampleClass { }
    static void Main()
    {
        // Declare a list of type int
        GenericList<int> list1 = new GenericList<int>();

        // Declare a list of type string
        GenericList<string> list2 = new GenericList<string>();

        // Declare a list of type ExampleClass
        GenericList<ExampleClass> list3 = new GenericList<ExampleClass>();
    }
}

Generics Overview

  • Use generic types to maximize code reuse, type safety, and performance.

  • The most common use of generics is to create collection classes.

  • The .NET Framework class library contains several new generic collection classes in the System.Collections.Generic namespace. These should be used whenever possible in place of classes such as ArrayList in the System.Collections namespace.

  • You can create your own generic interfaces, classes, methods, events and delegates.

  • Generic classes may be constrained to enable access to methods on particular data types.

  • Information on the types used in a generic data type may be obtained at run-time by means of reflection.

Related Sections

C# Language Specification

See Also

posted on 2007-10-24 14:40  共同学习,共同进步  阅读(422)  评论()    收藏  举报