[已解决问题] 构造函数里面给变量赋值,可为什么取不到值
提问时间: 2008-05-14 16:07
悬赏分:10 浏览:168 次

public abstract class DbHelperSQL

{

   public static string connectionString;

   public DbHelperSQL()
        {

           connectionString ="ssssss";

        }

 

可是这边为什么取不到connectionString 的值呢

}


最佳答案
public abstract class DbHelperSQL

{

   public static string connectionString;

   static DbHelperSQL()
        {

           connectionString ="ssssss";

        }

}
2008/5/14 17:32:10 回答者:deerchao


提问者对于答案的评价:谢谢
其它回答(2)
你在实例的构造函数中给该类的静态变量赋值,在生成实例之前是取不到值的。

也就是说,你必须实现一个这个抽象类的子类,然后再生成一个子类的实例,这时候才会调用该抽象类的实例构造函数,才会给静态变量赋值。
2个月前   回答者:玉开 - 老鸟四级
因为你定义的那个构造函数没执行,你在DbHelperSQL实例化时如果这样写,应该会取到值DbHelperSQL dbHandlerSQL=new DbHelperSQL();

deerchao的方法就很好,因为连接字符串一般都是固定不变的,自然不需要每次构造对象时进行赋值,于是写成静态构造函数,就比较理想,写成静态函数难道还取不到在静态函数里赋的值吗?赫赫
2个月前   回答者:Indigo Dai - 菜鸟二级
评论
2个月前   叶子绿了 :
啊!能否举个例子
   您需要登录以后才能回答!
我的问题    我要提问


快到期问题

> 问题排行榜

有不合适内容,建议去除