C# 属性
C# 属性
C# 属性没有存储位置。 C# 属性是字段的扩展,可以像字段一样访问。
属性具有用于设置、获取或计算其值的访问器。
C# 属性的使用
C# 属性可以是只读的或只写的。
我们可以在 C# 属性中设置值时使用逻辑。
我们将类的字段设为私有,这样字段就不能直接从类外部访问。现在我们被迫使用 C# 属性来设置或获取值。
C# 属性示例
using System;
public class Employee
{
private string name;
public string Name
{
get
{
return name;
}
set
{
name = value;
}
}
}
class TestEmployee{
public static void Main(string[] args)
{
Employee e1 = new Employee();
e1.Name = "Sonoo Jaiswal";
Console.WriteLine("Employee Name: " + e1.Name);
}
}
输出:
Employee Name: Sonoo Jaiswal
C# 属性示例 2: 设置值时具有逻辑
using System;
public class Employee
{
private string name;
public string Name
{
get
{
return name;
}
set
{
name = value+" lidihuo";
}
}
}
class TestEmployee{
public static void Main(string[] args)
{
Employee e1 = new Employee();
e1.Name = "Sonoo";
Console.WriteLine("Employee Name: " + e1.Name);
}
}
输出:
Employee Name: Sonoo lidihuo
C# 属性示例 3: 只读属性
using System;
public class Employee
{
private static int counter;
public Employee()
{
counter++;
}
public static int Counter
{
get
{
return counter;
}
}
}
class TestEmployee{
public static void Main(string[] args)
{
Employee e1 = new Employee();
Employee e2 = new Employee();
Employee e3 = new Employee();
//e1.Counter = 10;//Compile Time Error: Can't set value
Console.WriteLine("No. of Employees: " + Employee.Counter);
}
}
输出: