我想让类的成员在类或类的继承者可以修改,实例调用时不能修改,即只想在构造函数中修改其值。下面这三种方法都不理想:
public readonly string _member1 = "sdaf";
public string Member { get; }
public string Member1 { get { return _member1; } }
public readonly string _member1 = "sdaf";
public string Member { get; }
public string Member1 { get { return _member1; } }
解决方案 »
- 是这样的,我打算将数据库中的数据显示在我的窗口中,然后选择一部分删除
- 请问如何检测电脑进入待机和由待机进入系统,这两个产生的什么事件。
- winform中怎么在页面中传值?
- visual studio 2008的C#开发的程序可以在win98运行吗?
- winfrom(C#)中将设置好的字体颜色能一起保存至数据库,然后读出来也已设置好吗?
- MDI的问题!急!~
- 江湖救急!在线给分!
- C#用oledb读取UTF-8格式的CSV中文乱码,请帮忙修改
- 我想从数据库中取出离DateTime.Now时间最近的数据该怎样取?
- 关于“内存分配访问无效”的错误!!!!!!!
- c#程序与操作系统
- WinForm中的统一皮肤样式是怎么实现的?
public string Member1 { get { return _member1; } }
{
private readonly string s;
protected Parent(string s)
{
this.s = s;
}
}public class Child : Parent
{
public Child(string s) : base(s)
{
}
}
private string _member;
private string _member1 = "sdaf";
public string Member { get { return _member; } }
public string Member1 { get { return _member1; } }
_member和_member1声明成private,不需要声明称readonly,
这样的目的就是可以省去“private string _member;”这行代码,用一行搞定。
因为这样做还要定义 private string _member1;,即要用两行来实现。
像我这平[烦]的人觉得这样太麻[凡]了。
public string Member
{
public get{ return _strMember;}
protected set {_strMember = value;}
}
刚看到一个这样的好消息:“错误 1 无法对只读的字段赋值(构造函数或变量初始值指定项中除外)”
即在构造函数中可以对其付值,而我正是要在构造函数中初始化其值。
当然又有另一个问题,我的构造函数由于参数不一样,可能不只一个构造函数,
付值的代码要重复放在每个构造函数中,不能提取到一个 private void InitProps() 过程中。
例如 public class Read
{
public readonly int num = 10;
public Read(int num)
{
this.num = num;
}
public Read()
{
}不知道你为什么要拼命减少代码量,并不是代码量越少越好的
由于挑三拣四,总是做些修改维护方面的工作,或者就是写些小系统。
想写个大点的系统,每次写到一个阶段又重头开始写,从五六年前开始想写一套管理软件到现在是名副其实地屡战屡败。感叹ing...