- static修饰成员变量
如果一个成员变量使用static修饰,那么这个变量不属于对象自己,而属于所在的类,多个对象共享同一份数据;
- static修饰成员变量;
一旦使用static修饰成员方法,那么就成为了静态方法,静态方法不属于对象,而是属于类的;
如果没有使用static修饰,那么首先必须创建对象,然后通过对象才能使用它
如果有了static修饰,不需要创建对象,可以直接通过类名称来使用它
无论是成员变量,还是成员方法,如果有了static修饰,都推荐使用类名称调用;
静态变量:类名.静态变量;
静态方法:类名.静态方法();
注意事项
1.静态不能直接访问非静态;(原因是:内存中是先有了静态,后有非静态。)
2.静态方法中不能使用this(this代表当前对象,通过谁调用的方法,谁就是对象,)
3.static 内存图;
注意:根据类名称访问静态成员变量的时候,全称和对象没有关系,只和类有关系;
4.静态代码块;
特点:当第一次用到本类是,静态代码块执行唯一的一次;静态内容总是优先于非静态,所以静态代码块比构造方法先执行;