静态方法

[复制链接]
查看11 | 回复3 | 2014-2-18 16:42:02 | 显示全部楼层 |阅读模式


哪位知道什么时候用静态方法
什么时候用实例方法

public void Update(AccountInfo myAccount) {

SqlParameter[] accountParms = GetAccountParameters();

SqlParameter[] profileParms = GetProfileParameters();



SetAccountParameters(accountParms, myAccount);

SetProfileParameters(profileParms, myAccount);



using (SqlConnection conn = new SqlConnection(SQLHelper.CONN_STRING_NON_DTC)) {

conn.Open();

using (SqlTransaction trans = conn.BeginTransaction()) {

try {

SQLHelper.ExecuteNonQuery(trans, CommandType.Text, SQL_UPDATE_ACCOUNT, accountParms);

SQLHelper.ExecuteNonQuery(trans, CommandType.Text, SQL_UPDATE_PROFILE, profileParms);

trans.Commit();

}catch {

trans.Rollback();

throw;

}

}

}

}
上面这个没有用静态
而下面却用了
public static int ExecuteNonQuery(SqlTransaction trans, CommandType cmdType, string cmdText, params SqlParameter[] cmdParms) {

SqlCommand cmd = new SqlCommand();

PrepareCommand(cmd, trans.Connection, trans, cmdType, cmdText, cmdParms);

int val = cmd.ExecuteNonQuery();

cmd.Parameters.Clear();

return val;

}
设计静态,实例方法有个标准吗????
回复

使用道具 举报

千问 | 2014-2-18 16:42:02 | 显示全部楼层
static是在類沒有實例的情況下就能的,這要看你想怎么用!
回复

使用道具 举报

千问 | 2014-2-18 16:42:02 | 显示全部楼层
那不是只要方法不访问静态变量
就可以用静态方法啦???
回复

使用道具 举报

千问 | 2014-2-18 16:42:02 | 显示全部楼层
[php]
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{

// 直接調用

textClassA.a();

// 實例化對象才能調用方法

textClassB b = new textClassB();

b.a();
}
}
class textClassA
{
public static void a()
{

Console.WriteLine("社會主義好!&quot

;
}
}
class textClassB
{
public void a()
{

Console.WriteLine("社會主義好!&quot

;
}
}
}
[/php]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行