static的注意事项
A:在静态方法中是没有this关键字的。
如何理解呢?
1.静态是随着类的加载而加载,this是随着对象的创建而存在。
2.静态比对象先存在。
B:静态方法只能访问静态的成员变量和静态的成员方法
静态方法:
成员变量:只能访问静态变量
成员方法:只能访问静态的成员方法
非静态方法:
成员变量:访问可以是静态的,也可以是非静态的
成员方法:访问可以是静态的成员方法,也可以是非静态的成员方法
简记:静态只能访问静态
静态进了方法区,可以共享
static关键字的特点:
- 随着类的加载而加载
- 优先于对象存在
- 被类的所有对象共享(举例:班级的学生应该公用一个班级编号。其实这个特点告诉我们如果某个成员变量被所有对象共享,那么他就该定义为静态的。举例:饮水机用静态,水杯不能用静态。共性用静态,特性用非静态)
- 可以通过类名调用,推荐使用类名调用
如果一个类中所有的方法都是静态的,需要再多做一步,私有构造方法,目的是不让其他类创建本类对象,直接用 类名. 调用即可