LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

C# 中的 this 关键字及其三种用法

admin
2024年6月5日 23:29 本文热度 621

在C#编程语言中,this关键字是一个特殊的引用,它指向当前类的实例。this关键字在类的方法内部使用,主要用于引用当前实例的成员。以下是this关键字的三种常见用法,并通过示例代码进行解释。

1. 引用当前实例的成员

当类的方法或属性中的参数或局部变量与类的成员名称冲突时,可以使用this关键字来明确指定我们正在引用的是当前实例的成员,而不是局部变量或参数。

示例代码:

public class Person
{
    private string name;

    public Person(string name)
    {
        // 使用 this 关键字来区分成员变量和构造函数的参数
        this.name = name;
    }

    public void SetName(string name)
    {
        // 同样使用 this 关键字来引用成员变量
        this.name = name;
    }

    public string GetName()
    {
        return this.name;
    }
}

在这个例子中,this.name指的是类的私有成员变量name,而不是方法或构造函数的参数name

2. 作为方法的返回值

this关键字还可以用作方法的返回值,通常用于实现链式调用(也称为流畅接口)。当方法返回this时,它实际上返回的是当前对象的引用,允许我们在同一对象上连续调用多个方法。

示例代码:

public class Builder
{
    private string material;
    private int size;

    public Builder SetMaterial(string material)
    {
        this.material = material;
        // 返回当前实例的引用,以便进行链式调用
        return this;
    }

    public Builder SetSize(int size)
    {
        this.size = size;
        // 返回当前实例的引用,以便进行链式调用
        return this;
    }

    public void Build()
    {
        Console.WriteLine($"Building with {material} of size {size}");
    }
}

// 使用示例:
Builder builder = new Builder();
builder.SetMaterial("Wood").SetSize(10).Build(); // 链式调用

在这个例子中,SetMaterialSetSize方法都返回this,这使得我们可以将方法调用链接在一起。

3. 在索引器中使用

this关键字还可以用于定义索引器,索引器允许一个类或结构的对象像数组一样进行索引。在这种情况下,this关键字用于指定索引器的访问方式。

示例代码:

public class CustomArray
{
    private int[] array = new int[10];

    // 索引器定义,使用 this 关键字
    public int this[int index]
    {
        get { return array[index]; }
        set { array[index] = value; }
    }
}

// 使用示例:
CustomArray customArray = new CustomArray();
customArray[0] = 100// 设置第一个元素的值
Console.WriteLine(customArray[0]); // 获取并打印第一个元素的值

在这个例子中,我们定义了一个名为CustomArray的类,它使用this关键字创建了一个索引器,允许我们像访问数组元素一样访问CustomArray对象的成员。

总结

this关键字在C#中扮演着重要角色,它提供了对当前实例的引用,使得在方法内部能够清晰地访问和修改实例的成员。通过了解this关键字的这三种常见用法,开发者可以更加灵活地编写面向对象的代码,并实现更优雅的编程风格。


该文章在 2024/6/5 23:29:14 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved