Java中static(静态变量/方法)的优缺点

static关键字声明的变量或方法称为静态变量/方法

静态static变量/方法在类加载的过程中被初始化,在内存中只存在一份,所以可以把它当作是全局变量/方法。

优点

  1. 属于类级别的,不需要创建对象就可以直接使用.
  2. 全局唯一,内存中唯一,静态变量可以唯一标识某些状态.
  3. 在类加载时候初始化,常驻在内存中,调用快捷方便.

应用场景:
1. 静态方法最适合工具类中方法的定义;比如文件操作,日期处理方法等.
2. 静态方法适合入口方法的定义;如单例模式,因为从外部拿不到构造函数,所有定义一个静态的方法获取对象非常有必要.
3. 静态变量适合全局变量的定义.(如布尔型静态成员变量做控制符)

缺点

  1. 静态方法不能调用非静态的方法和变量.(非静态方法可以任意的调用静态方法/变量
  2. 不能使用this和super关键字(属于类级别,没有创建对象签不可用this/super)

猜你喜欢

转载自blog.csdn.net/quanaianzj/article/details/82349753