static 静态的可以修饰属性、方法、代码块
static修饰属性(类变量)
- 1.由类创建的所有对象,都共享这个属性
- 2.如果其中一个对象对属性值发生改变会导致其他对象属性值跟着改变
- 3.类变量随着类的加载而加载独一份
- 4.静态变量可以直接通过"类名.类变量"的方式调用
- 5.类变量存在静态域中,不存在堆中,存在堆中的都是实例变量
- 6.类变量的加载要早于对象
static修饰方法()
- 1.随着类的加载而加载
- 2.可以通过"类名.方法名"的方式调用
- 3.内部可以调用静态方法或者静态属性,不能调用(注意是调用静态方法外的)非静态方法非静态变量,非静态方法可以
- 调用静态方法和静态变量
- 注意:静态方法不能使用this或super关键字
static可以修饰代码块
- 只要在静态代码块里面定义的变量都是静态变量