面向对象—泛型(Generics)

泛型的基本概念:
泛型(Generics)允许你编写一个灵活的、可重用的代码框架,而不必在编写时指定代码将操作的确切数据类型。这意味着你可以编写一个函数或类来处理多种数据类型,而不是为每种数据类型编写一个单独的函数或类。

优点:
类型安全:使用泛型可以在编译时检查类型,减少运行时错误。
代码复用:可以用同一个方法或类处理不同类型的数据。
性能提升:使用泛型避免了类型转换或装箱拆箱操作,这可以提高代码的性能。
C#中的泛型:
在C#中,你可以在类、接口、委托和方法上使用泛型。下面是一些基本示例。

泛型类:

public class Box<T>
{
    private T content;
    public void Pack(T item)
    {
        content = item;
    }
    
    public T Unpack()
    {
        return content;
    }
}

在这个例子中,T 是一个占位符,代表未来你会用某个具体的类型来替换它。当你创建一个 Box 类的实例时,你可以指定 T 的具体类型。

使用泛型类:

Box<int> intBox = new Box<int>();
intBox.Pack(123);

Box<string> stringBox = new Box<string>();
stringBox.Pack("Hello Generics!");

泛型方法:
泛型也可以用于方法,即使这个方法是在非泛型类中。

public class Utility
{
    public void Swap<T>(ref T lhs, ref T rhs)
    {
        T temp;
        temp = lhs;
        lhs = rhs;
        rhs = temp;
    }
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容