static关键字既可以修饰成员变量,也可以修改成员方法,修饰的成员变量和成员方法可以直接通过类名调用,也可以通过对象调用(其实即使是通过对象调用,也会被翻译成类名调用),建议通过类名调用。
成员方法用static修饰后,就成为了静态方法,静态方法不属于对象,而是属于类。
注意事项:
1.静态方法中不能使用this,因为this指的是当前对象,而静态方法是通过类名调用的
2.静态不能直接访问非静态,因为内存中是【先】有静态,【后】有非静态,可能会出现调用的东西不存在
3.调用同一个类中的静态方法,可以直接写方法名,省略类名,默认自带类名
4.当第一次用到本类时,静态代码块只执行唯一一次,后续访问也不再执行
5.静态内容总是优先于非静态的,所以静态代码块优先于构造方法执行
静态代码块典型用途,用来一次性对静态成员变量进行赋值。