C#防止字典属性元素被设置在类之外?
标题说明了一切。通过访问修饰符减少访问只会阻止重新初始化属性;它不能阻止元素成为全局状态(坏习惯)。我知道有一个索引集合,但是对于任何其他索引集合,我应该怎么做C#防止字典属性元素被设置在类之外?,c#,properties,encapsulation,C#,Properties,Encapsulation,标题说明了一切。通过访问修饰符减少访问只会阻止重新初始化属性;它不能阻止元素成为全局状态(坏习惯)。我知道有一个索引集合,但是对于任何其他索引集合,我应该怎么做 public class Start { public static void main() { //CODE SMELL AHEAD AttendanceManager.MuteStatuses[0] = new KeyValuePair <string, string> (
public class Start
{
public static void main()
{
//CODE SMELL AHEAD
AttendanceManager.MuteStatuses[0] = new KeyValuePair <string, string> ("", "");
}
}
public static class AttendanceManager
{
public static HybridDictionary MuteStatuses
{
get
{
playersMuteStatuses.Add ("", "");
return playersMuteStatus;
}
}
private static HybridDictionary playersMuteStatus = new HybridDictionary();
}
公共类启动
{
公共静态void main()
{
//代码预告
AttendanceManager.MuteStatus[0]=新的KeyValuePair(“,”);
}
}
公共静态课堂管理员
{
公共静态杂交状态
{
得到
{
playersmutestatus.Add(“,”);
返回playersMuteStatus;
}
}
private static HybridDictionary playersMuteStatus=新建HybridDictionary();
}
编写帮助程序方法:
public static void AddMuteStatus()
=> playersMuteStatus.Add("", "");
public static object GetMuteStatus(object idx)
=> return playersMuteStatus[idx];
写入帮助器方法:
public static void AddMuteStatus()
=> playersMuteStatus.Add("", "");
public static object GetMuteStatus(object idx)
=> return playersMuteStatus[idx];
不要使用
混合字典
。我们有IReadOnlyDictionary
private Dictionary playersMuteStatus=new;
公共IReadOnlyDictionary静音状态
{
得到
{
将播放器静音状态返回为IReadOnlyDictionary;
}
}
不要使用混合字典
。我们有IReadOnlyDictionary
private Dictionary playersMuteStatus=new;
公共IReadOnlyDictionary静音状态
{
得到
{
将播放器静音状态返回为IReadOnlyDictionary;
}
}