关于数据库访问类的问题

来源:百度知道 编辑:UC知道 时间:2024/05/14 16:18:56
请问用static方法好还是需要实例化的方法好?

1.Public static OleDbDataReader ExecuteDataReader(){...}
调用:DataBase.ExecuteDataReader();

2.Public OleDbDataReader ExecuteDataReader(){...}
调用:DataBase DB = new DataBase();
DB.ExecuteDataReader();

第2种方法每次访问数据都需要对DataBase实例化,个人认为似乎不太好,请高手指点下。

在一些系统中使用非常频繁的方法都使用静态方法可以提高系统性能我是这么认为的 :)
本身不可升级, 重写 这要看一个软件产品的目的是什么了.
为了方便,不用实例化,但这样程序编译运行时就占用了系统资源.
静态的属性和方法在程序启动的时候,就全部装入内存的,而不管这些方法、属性以后有没有用到。即使是没有人再访问程序,这部分内存仍然不会释放还有就是,所有访问者看到的静态属性的数据几乎都是一样的,比如A用户设置了UserName这个属性,B用户访问的时候,得到的UserName仍然是A用户设置的那个。这种特性,如果用在固定数据中,那不会有太大问题,比如连接字符串之类的
静态方法/数据成员是属于类的,不是属于某一个对象的,因而调用它不需要实例化;静态方法和静态数据成员相当于共享变量。为该类的所有对象所共有,因而在需要共享数据时,定义这种类型时很好的选择。 一但定义一个类后(不一定要实例化对象)该类的所有静态成员就载入内存(并不是程序启动,就装入内存,没有定义该类时它不会载入内存) 静态成员的作用域与它所属的类的作用域相同

用 static 直接调用不需实例化, 节省内存, 适用于简单情况.
用 new 实例化适用于需要多个不同实例, 可能有不同参数的情况.

如果不需要用到类的属性时可以用静态方法.

static方法好!
具体原因我也不是很清楚!
就知道老师从他公司拿来的项目全是用static~