this 关键字引用当前类的实例,用于:访问实例字段和方法。将对象作为参数传递给其他方法。从嵌套类中访问外部类的成员。作为扩展方法的参数。
c# 中 this 的用法
什么是 this?
this 是一个关键字,它引用当前正在执行代码的类的实例。
this 的作用
- 访问类的实例字段和方法。
- 将对象作为参数传递给其他方法。
- 从嵌套类中访问外部类的成员。
- 作为扩展方法的参数。
this 用法的示例
访问实例字段和方法:
public class MyClass
{
private int count;
public void Increment()
{
this.count++; // 访问实例字段 count
}
}
将对象作为参数传递给其他方法:
public static void PrintObject(object obj)
{
Console.WriteLine(obj);
}
public class MyClass
{
public static void Main()
{
MyClass instance = new MyClass();
PrintObject(instance); // 将当前实例作为参数传递
}
}
从嵌套类中访问外部类的成员:
public class OuterClass
{
private int count;
public class NestedClass
{
public void Increment()
{
OuterClass.this.count++; // 访问外部类的实例字段 count
}
}
}
作为扩展方法的参数:
扩展方法是向现有类型添加新方法的方法。this 用于将扩展方法参数指定为要扩展的类型。
public static class MyExtensions
{
public static void Print(this string str)
{
Console.WriteLine(str);
}
public static void Main()
{
"Hello World".Print(); // 使用扩展方法
}
}