- 静态变量的优点
- 内存中只保留一份,不需要频繁创建和销毁
- 静态变量的缺点
- 破坏面向对象类的封装性
- 生命周期长
- 可能产生其他问题?...
曾见过一个大牛的观点:
- 代码中的静态变量最好不要超过 10 个。
- 而且静态变量要去序列化,当找不到这个变量时再解冻。
他说的是否有道理?
现在有这样一个需求:
- 子类处理具体业务,需要异步。
- 父类提供一个线程池,子类处理的时候,直接 submit 一个 Runnable 。
- 多个子类想共享一个父类的线程池。
如果我把这个 thread pool 定义为 static ,会有什么坏处吗?