静态与非静态的方法或变量使用场合简要说明
来源:互联网 发布:为什么金九银十 知乎 编辑:程序博客网 时间:2024/06/10 04:27
静态与非静态的方法或变量使用场合
1.考虑变量是否是线程安全的;
如mybatis中的sqlsession和jdbc中的connection是非线程安全的,就不能用static修饰,在多线程环境下产生资源竞争(A线程使用完毕关闭后,B线程还可能去使用),所以每次使用都要重新创建(New)
如一些框架中的Factory工厂类属于重量级的类,new一个相当好资源,也没有new的必要,就用静态的
2.静态方法考虑是否存在运行状态问题:
如bean对象,每个bean对象具有唯一性,且在程序运行过程中有调用不同bean实例中信息的必要,就不能用static修饰。
如工具类,没有保留运行状态的必要(用完即可回收)一般用static修饰
阅读全文
1 0
- 静态与非静态的方法或变量使用场合简要说明
- 静态类,静态方法,静态变量与非静态之前的区别
- 静态类,静态方法,静态变量与非静态之前的区别
- 静态类,静态方法,静态变量与非静态之前的区别
- 静态类,静态方法,静态变量与非静态之间的区别
- 为什么不能从静态的方法里调用非静态的方法或变量
- 为什么不能从静态的方法里调用非静态的方法或变量
- 为什么不能从静态的方法里调用非静态的方法或变量
- 为什么不能从静态的方法里面调用非静态方法,或变量?
- 为什么不能从静态的方法里面调用非静态方法,或变量?
- 为什么不能从静态的方法里面调用非静态方法,或变量?
- 为什么不能从静态的方法里面调用非静态方法,或变量?
- 为什么不能从静态的方法里面调用非静态方法,或变量?
- 为什么不能从静态的方法里面调用非静态方法,或变量?
- 为什么不能从静态的方法里面调用非静态方法,或变量?
- 静态变量、静态方法说明
- C#中静态变量用法简要说明
- [Java]静态变量与非静态变量的区别
- 一个6年的Java程序员,针对分布式锁的案例分析和总结
- hbase初识---hbase shell操作以及对应java API开发
- 3.java.io.IOException
- Hbase的shell操作
- 关于AttributeError:'numpy.ndarray' object has no attribute 'index'
- 静态与非静态的方法或变量使用场合简要说明
- MathType如何输入任意长度的空格
- Minimum supported Gradle version is 3.3. Current version is 2.14.1.Please fix the project's Gradle s
- Building and Flashing AOSP for Device Nexus 5 hammerhead
- 逆序的三位数(c语言)
- java实现下载功能Controller层代码
- SpringCloud(第 054 篇)简单 Quartz-Cluster 微服务,采用注解配置 Quartz 分布式集群
- 错误1:malloc.c:2394
- Tensorflow: 保存和复原模型(save and restore)