单列模式是否会影响系统效率? 如题希望有经验的高手给说一下,它跟对象缓存池比起来怎么样? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 单例模式是节省内存的好方法,如果需要对每一个实例都进体具体的事务控制,并且每一个实例如都带有具体的特性的话,就做对象缓存池,否则做单例就可以了。举个例子,为什么不把一个Connection对象做成单例,而要做对连接池呢?单例不是更节省资源吗?就是因为每个Connection都是处理一个特别的请求的,每个请求用Connection来处理的数据都不一定,而且不同的Connection有不同的事务管理机制,所以要做连接池。 楼上的回答很好,可能我没有说的太清楚,我的表达能力比较弱我用一个简单的类来说明一下: class A { public void dost(){} public void dostb(){} }象上面这样的类即没有同步,也没有数据库连接的一些东西,就仅仅是一些业务方法调用。象这样的类是不是做成单列比作成缓存要好呢? 数据库连接有其特殊性,连接的建立过程是缓慢的,不光是在空间的占用上如果是对于其他类型的实例,实例的创建过程影响不大,但不必要的过多的实例会占用不必要的储存空间依实际应用来决定,如果你的JVM中确实只需要一个实例就用单例模式吧如果你的A类不需要实例变量,仅仅提供一些业务方法,那么把A中的方法声明为静态方法,作为工具类方法就可方法是否同步要考虑两多线程环境执行同一方法,是否造成对类的字段存取的冲突 java中日期循环问题,望大神请教 内部类中.this的用法,感觉很巧妙 如何显示main()方法的线程信息?? 程序调试问题,"找不到符号"! 大家来讨论一下这个问题:Comparable与Comparator的区别 各位帮忙看看:请问有什么反编译工具能编译看到软件的原代码啊? 有个关于applet的小问题,请大家帮帮忙! 初学java,打算作一个ftp文件检索的程序...请各位提些建议.. 在JAVA中,怎样确定字符串的高度 讨论,谁用swing组件开发过大型应用系统? 求助:Java发送Mail需要的所有类库和信息 ArrayList的问题
我用一个简单的类来说明一下: class A {
public void dost(){}
public void dostb(){}
}
象上面这样的类即没有同步,也没有数据库连接的一些东西,就仅仅是一些业务方法调用。象这样的类是不是做成单列比作成缓存要好呢?
如果是对于其他类型的实例,实例的创建过程影响不大,但不必要的过多的实例会占用不必要的储存空间
依实际应用来决定,如果你的JVM中确实只需要一个实例就用单例模式吧如果你的A类不需要实例变量,仅仅提供一些业务方法,那么把A中的方法声明为静态方法,作为工具类方法就可方法是否同步要考虑两多线程环境执行同一方法,是否造成对类的字段存取的冲突