悬赏分:10 浏览:168 次
public abstract class DbHelperSQL
{
public static string connectionString;
public DbHelperSQL()
{
connectionString ="ssssss";
}
可是这边为什么取不到connectionString 的值呢
}
|
你在实例的构造函数中给该类的静态变量赋值,在生成实例之前是取不到值的。
也就是说,你必须实现一个这个抽象类的子类,然后再生成一个子类的实例,这时候才会调用该抽象类的实例构造函数,才会给静态变量赋值。 因为你定义的那个构造函数没执行,你在DbHelperSQL实例化时如果这样写,应该会取到值DbHelperSQL dbHandlerSQL=new DbHelperSQL(); deerchao的方法就很好,因为连接字符串一般都是固定不变的,自然不需要每次构造对象时进行赋值,于是写成静态构造函数,就比较理想,写成静态函数难道还取不到在静态函数里赋的值吗?赫赫 |
|
2个月前 叶子绿了 : 啊!能否举个例子 |