什么是私有类?只有私有构造函数,不允许外界实例化的类。除了常用的单例模式,还可以用作类枚举,功能比枚举强大。
public class MyClass{
public static Myclass A=new Myclass("小明","001");
public static Myclass B=new Myclass("小红","002")
private string name;
private string code;
private Myclass(string name,string code){ this.name=name;this.code=code;}
public string ToName()
{
return name.ToString();
}
public string ToCode()
{
return code.ToString();
}
}
static void Main(string[] args)
{
Console.Writeline(Myclass.A.ToName());
}
这样就能达到枚举的效果,而且可以添加更多的属性,在代码里,用私有类代替硬编码,如果我们不再输出小明,只需要把A的构造参数换成小青就可以了,特别是代码里很多带路径或者文件名的代码,“D:/” 都没D盘怎么办?你还得到处查找,辨别,替换,多麻烦。代码里尽量少些硬编码,这样利于后期维护。一个产品,初次开发只占30%,后期得维护才是最困难的。