在一个项目中Model层看到一段代码:
public class PubCHClassInfo
{
public int Id;
public string Name = string.Empty;
public string Nick = string.Empty;
}
请问这样写的目的是什么?和public class PubCHClassInfo
{
private int _id;
public int Id
{
get { return _id; }
set { _id = value; }
}
private string _name;
public string Name
{
get{return _name;}
set{_name = value;}
}
}
这样的写法有区别吗??
public class PubCHClassInfo
{
public int Id;
public string Name = string.Empty;
public string Nick = string.Empty;
}
请问这样写的目的是什么?和public class PubCHClassInfo
{
private int _id;
public int Id
{
get { return _id; }
set { _id = value; }
}
private string _name;
public string Name
{
get{return _name;}
set{_name = value;}
}
}
这样的写法有区别吗??
public string Name = string.Empty;没有get和set,那属于什么啊??
//等价于
private string _name;
public string Name
{
get{return _name;}
set{_name = value;}
}
引用一下我在thinking in java看到一个很幽默的例子class Cat
{
public int height=10;
}Cat cat=new Cat();
cat.height=0; //这个可怜的猫就这样被压扁了但如果你用属性的话 就可以起到一定的控制 不要再让可爱的猫被压扁类成员: 总共用9个成员 分成两类
数据成员:字段 常量 事件
函数成员:方法 属性 构造函数 终结器 运算符 索引器最后补充 属性是特殊的方法 如果编译成IL语言 属性也编译成方法
/// 宿舍管理
/// </summary>
public int DormStatus
{
get { return m_nDormStatus; }
set { m_nDormStatus = value; }
} /// <summary>
/// 图书管理
/// </summary>
public int LibStatus
{
get { return m_nLibStatus; }
set { m_nLibStatus = value; }
}