c#

class c#如何定义属性

小樊
82
2024-10-19 10:50:04
栏目: 编程语言

在C#中,可以使用publicprivateprotectedinternal关键字来定义属性的访问级别。以下是一个简单的示例,展示了如何在C#类中定义属性:

public class Person
{
    // 定义一个私有字段
    private string _name;

    // 使用自动实现的属性,编译器会自动生成一个私有的后备字段
    public string Name
    {
        get { return _name; }
        set { _name = value; }
    }
}

在这个例子中,我们定义了一个名为Person的类,其中包含一个私有字段_name和一个公共属性NameName属性使用自动实现的属性语法,这意味着编译器会自动生成一个私有的后备字段来存储属性值。这样,我们就可以在不直接暴露字段的情况下,通过属性来访问和修改字段的值。

还可以手动实现属性的getter和setter方法,如下所示:

public class Person
{
    private string _name;

    public string Name
    {
        get { return _name; }
        set
        {
            if (value != null && value.Length > 100)
            {
                throw new ArgumentException("Name cannot be longer than 100 characters.");
            }
            _name = value;
        }
    }
}

在这个例子中,我们手动实现了Name属性的getter和setter方法。在setter方法中,我们添加了一个检查,以确保属性值的长度不超过100个字符。如果属性值不符合要求,将抛出一个ArgumentException异常。

0
看了该问题的人还看了