1、静态类里面只能有静态成员(包括静态字段、静态方法),不能包含非静态的变量。静态类不能有构造函数。
2、静态类里面可以声明const变量而且前面不用添加static ,因为默认的const变量默认就是static的,它本身就是属于类本身的。readonly不是静态的,所以我们在数据库工具类里面写connectionstring的时候都使用static readonly变量。
3、以前我写方法的时候,如果返回的是bool但是里面方法操作的返回值是int的时候,我就会在里面写上如下代码,
string sql = "select count(1) from tb_users where id=100"; SqlCommand cmd = new SqlCommand(); int count = cmd.ExecuteNonQuery(); if (count > 0) { return true; } return false;
最近看了一行代码,呵呵,才发现以前些麻烦了,代码如下:
string sql = "select count(1) from tb_users where id=100"; SqlCommand cmd = new SqlCommand(); return cmd.ExecuteNonQuery() > 0;
这样就可以了,简化了不少代码。
4、我们在写代码的时候如何判断一个对象是否需要外面套用using呢?经验之谈是一方面还有一个就是我们可以看看该对象是否有dispose方法,如果有这个方法或者实现了IDisposable接口最好嵌套在using里面,否则我们还需要手动的去调用dispose方法。
5、我们在使用using来释放资源的代码段里面不要有阻断当前进程的方法,如不要在数据库的sqlreader操作中进行messagebox的子操作,因为会阻断当前进程,资源得不到释放,最好在外面写一个标志位,然后通过标志位来判断,否则用户停留在messagebox画面去干其他事情的时候资源就得不到释放了。
6、静态构造函数,不管被调用了几次还是在几个类中被分别被调用,静态构造函数只执行一次,以后再也不执行了。
//Class1.i = 0;//先执行静态构造函数再赋值,所以这里打开下面就是0,否则下面为1 Response.Write(Class1.i);
时间: 2024-11-06 03:59:02