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("员工姓名:" + e1.Name);
}
}输出:
员工姓名:Sonoo Jaiswal
using System;
public class Employee
{
private string name;
public string Name
{
get
{
return name;
}
set
{
name = value+" JavaTpoint";
}
}
}
class TestEmployee{
public static void Main(string[] args)
{
Employee e1 = new Employee();
e1.Name = "Sonoo";
Console.WriteLine("员工姓名:" + e1.Name);
}
}输出:
员工姓名:Sonoo JavaTpoint
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("员工人数:" + Employee.Counter);
}
}
输出:
员工人数:3