属性中的访问器前面的修饰符有什么意义呢?就是get , set前面加public之类的修饰符我感觉不出他的意义,加在属性前还说的过去,加在访问器前就完全不知道什么意思了,求教???
解决方案 »
- 关于页面定时刷新问题
- 如何自定义事件
- c#是如何判断窗体中的某一个控件是否关联了事件处理
- [放分讨论]大家一起来讨论一下微软的范例 Duwamish7.0
- 【巨分贴】,征集实用,精彩的C#代码,供彼此共同交流学习!(望版主置顶)
- 如何删除Cache???请大家看看下面的代码!!!
- 【谁能给个这样的例子?弹出窗体选择值再返回】
- 找不到Microsoft.Interop.Security.AzRoles在Win2000 Server!!!
- 各位大虾,请帮我看一段代码,找一下原因!
- 如何用C#实现程序查号功能
- NET智能设备的开发 示例源代码
- 小妹求教!WinFrom如何扑获窗体并且输出为BMP图片
{
protected set{}
get{}
}
????
楼主是指这个嘛 当然有意义
例如以上 ,说明只有本身或子类有赋值的权限,别人只有读取
正常我们写属性都这么写对吧
public str
{
set{}
get{}
} 按c#理论,set和get默认都是private属性是吧。理论上只有在该类内部才能用get set对吧,实际上我们是到处都能用get set,楼上,你说是吗?
正常我们写属性都这么写对吧
public str
{
set{}
get{}
} 按c#理论,set和get默认都是private属性是吧。理论上只有在该类内部才能用get set对吧,实际上我们是到处都能用get set,楼上,你说是吗?
====
胡说
{
set{}
get{}
}
请问,这里
set{}
get{}
的默认修饰符是什么?
我确实不知道,只是凭感觉默认不写的都是private
{
get { return a; }
set { a = value; }
}
已经证明了这里的get set都是private属性,因为这么写没错
根据访问器的修饰符要比属性的修饰符小的原则,这里的get set必须是private
而且证明一旦改成public或其他属性就报错 寂寞高手们,都跑到哪里去啦,来帮小弟看看啊
private string _name;
public string Name{
protected set { _name = value; }
get { return _name; }
}
}class Class2 :Class1{
public void test(){
this.Name = "asdasd"; //这里可以对name赋值
}
}//
private void button1_Click(object sender, EventArgs e)
{
Class1 cc1 = new Class1();
//cc1.Name = "aaa"; //这里赋值就不能通过编译.
MessageBox.Show(cc1.Name);
}我理解的是如果不加protected 修饰,get set的默认值应该和属性的主修饰符是一样的,而不是默认private.不过好像没法验证的样子.
{
set{}
get{}
}
--------------------
按照你的说法,去掉public,那你想把属性声名成什么类型呢?
加public,在继承该类后,别人可以用它;
加private,这样没作用,你声名这个属性给谁用的呢?
加protected,见过,但不知道为什么用这个.比较少见.
没有修饰符,系统会warning you