c# 中的“”.“”( 点) 符号的用法
在 C# 中,点(.
)符号具有多种用法和含义,主要用于访问类型的成员(字段、属性、方法等)。以下是点符号在 C# 中的主要用法:
1. 访问对象的成员
实例成员访问:
使用点符号可以访问类的实例(对象)的成员,包括字段、属性和方法。
csharpMyClass obj = new MyClass(); obj.MyMethod(); // 访问方法 int value = obj.MyProperty; // 访问属性
静态成员访问:
也可以通过类名直接访问静态成员,使用点符号来调用静态方法或访问静态属性。
csharpMyClass.MyStaticMethod(); // 访问静态方法 int staticValue = MyClass.MyStaticProperty; // 访问静态属性
2. 命名空间成员访问
- 命名空间下的类型:
在使用命名空间引用时,可以通过点符号访问命名空间中的类型或成员。
csharpusing System;
3. 泛型类型参数
- 泛型类型参数限定:
在泛型方法或类中,使用点符号指定泛型类型的具体成员。
csharppublic void MyMethod<T>(T value) where T : IComparable { int result = value.CompareTo(anotherValue); // 使用泛型类型参数调用方法 }
4. 成员访问修饰符
- 访问修饰符:
在类的内部或外部,点符号用于访问不同访问级别(public、private、protected 等)的成员。
csharppublic class MyClass { private int privateField; public int PublicProperty { get; set; } private void PrivateMethod() { // 私有方法 } public void AccessPrivateMember() { privateField = 10; // 访问私有字段 PrivateMethod(); // 调用私有方法 PublicProperty = 20; // 访问公共属性 } }
5. 扩展方法
- 扩展方法调用:
通过静态类和静态方法实现的扩展方法,使用点符号在实例上调用扩展方法。
csharppublic static class StringExtensions { public static string CustomMethod(this string str) { // 扩展方法实现 return str.ToUpper(); } } string myString = "hello"; string result = myString.CustomMethod(); // 使用点符号调用扩展方法
总结:
点(.
)符号在 C# 中用于访问对象的成员(字段、属性、方法)、静态成员、命名空间成员、泛型类型参数的成员、访问修饰符限定的成员和调用扩展方法等多种情况。它是 C# 中一种重要的语法元素,用于实现面向对象编程的各种特性和功能。