static是静态修饰符,被它修饰的东西(包括变量、方法、类)即为静态类型。一般来说,用static修饰的东西是再全局储存区分配的。这样它的生命周期就会一直保持到程序,这酒是为什么会被称为静态类型的原因。
而静态分配的,有两种情况:
1. 用在类里的属性、方法前面,这样的静态属性与方法不需要创建实例就能访问, 通过类名或对象名都能访问它,静态属性、方法只有“一份”:即如果一个类新建有N个 对象,这N 个对象只有同一个静态属性与方法;
2. 方法内部的静态变量: 方法内部的静态变量,执行完静态变量值不消失,再次执行此对象的方法时,值仍存在, 它不是在栈中分配的,是在静态区分析的, 这是与局部变量最大的区别; |