Static
#Static 定义的变量
- 其调用:
类名.变量名
- 所有同一个类的类成员共享,共用一个;
- 其值可以修改
- 不能将方法体内的局部变量声明为static
#Static 定义的方法
- 其调用:
类名.方法
如 Math.pow
- 所有同一个类的类成员共享,共用一个;
- 其值可以修改
- 静态方法不能向对象实施操作,静态方法中不可以使用this关键字;
- 不能访问类中实例域(非static域 / 变量 / 方法),可访问类的静态域 / 变量(而且无需
类名.变量名
的普通调用格式):
//demo
class Employee
{
private static int nextId = 1;
public static int getNextId()
{
return nextId;
}
}
被static定义的静态域独立于Java 的堆栈,独占一个存储空间;
static的方法在装载class得时候往往首先完成,比构造方法早,此时非static得属性和方法还没有完成初始化。
所以不能调用。