避免使用static变量

来源:互联网 发布:数据库镜像同步 编辑:程序博客网 时间:2024/05/16 19:18

使用static变量使由同一个类构建的对象有效地共享相同的字段。即使static变量将在某些情况下有帮助(比如:计数器),但是在大多数情况下他们是要避免的。

在计数器中使用static:

static int counter=0;public void increment(){counter++;}

首先,他们打破了对象封装规则。static字段作为全局变量,与一个类而不是一个对象联系。

static变量有一个生命周期与整个程序的运行时间相匹配,对内存管理不利。这个状态不得不通过安装启用和复杂的GC(对象回收机制)来进行特殊的传递。

public class MyObjectP{ static String TEXT="Enki";}//在创建任何MyObject对象前文本框会占用内存
为了确保一个简单的拷贝一个值,单例模型是更好的做法。另外,static变量对于安全、 重载和并发性不利。

但记住static常量却被认为是比较好的做法。

原创粉丝点击