public class Test{ public Test(){} public static Test() //静态构造函数,只会在Test第一次执行时有用 { ht.Add("a","a"); //赋值 } private static Hashtable ht; //将ht也定义成静态函数 public static Check(){ return ht["a"] } }
public class Test{ private static Hashtable ht; public Test(){ //非静态成员的初化; } public static Test(){ //此初始化ht; }
private Hashtable ht;
static Test()
{
ht = new Hashtable();
ht.Add("a","x");
}
public static object Check(){ return ht["a"];
}
see
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/csref/html/vclrfstaticconstructors.asp
===>
private static Hashtable ht;
这个static Test里面,不能ht = new Hashtable()吧
这个Hashtable是实例的,不是static的
没有看到 change
//初始化ht
return ht["a"]
}
private Hashtable ht;
还是要改成
private static Hashtable ht;
静态的Check() 只能调静态的ht。
public Test(){}
public static Test() //静态构造函数,只会在Test第一次执行时有用
{
ht.Add("a","a"); //赋值
}
private static Hashtable ht; //将ht也定义成静态函数
public static Check(){
return ht["a"]
}
}
private static Hashtable ht;
public Test(){
//非静态成员的初化;
}
public static Test(){
//此初始化ht;
}