属性是可以提供被灵活的读取与调用,属性的存在形式有两种:一种是在基类库中定义的,还有一种是自定义的。例如自定义一个属性,他的一般格式如下:
private string a;
public string c
{
get
{ return a; }
set
{ a = value; }
}
这里可以看到用到了几个修饰词:private和public,这里就简单谈一下几种常见的修饰符的意思以及他们的可用范围;
private:隐私,也就是自己的,作为该类所私有的,只能在声明类中使用;
public:公共的就是公开的,不限制访问权限,其他类都可以调用;
protected:保护的,只能在其所在类和其子类(继承等关系)才能调用;
internal:内部的,只有其所在类才能访问,外部类无法访问;
这段程序就是定义了一个属性,他的数据类型是string,也就是字符类型。用get和set来确定定义的属性,还有一种通俗的写法是:public string NAME { get; set; }
,这个也是定义,也是string类型。例如程序:
namespace shuxing
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入你的姓名:");
//string name;
string name = Console.ReadLine();
Console.WriteLine("你的属性是:");
Shuxing shu = new Shuxing();
shu.c = "10000";
Console.WriteLine("你的攻击力是:"+shu.c);
shu.c = "10000";
Console.WriteLine("你的血量是:"+shu.c);
Zhaoshi zhao = new Zhaoshi();
zhao.NAME = "降龙十八掌";
Console.WriteLine("你的绝招有:"+zhao.NAME);
zhao.NAME = "铁布衫";
Console.WriteLine("皮厚的原因是你有:"+zhao.NAME);
Console.ReadLine();
}
}
class Shuxing
{ private string a;
public string c
{
get
{ return a; }
set
{ a = value; }
}
}
class Zhaoshi
{
public string NAME { get; set; }
}
}
如程序中就是写了这两种属性的定义,下面定义了一个招式的类,这个返回的值就是字符型的数据,当在main函数中调用的时候,在初始化之后,可以看到shu.c = "10000";以及zhao.NAME = "降龙十八掌";
这些就可以直接定义所需要显示的属性,可以很清楚的了解该类的属性。
这是显示结果: