关于static的使用
1.修饰成员变量
在static修饰成员变的时候,主要目的是表示该成员变量是共享的.该类所有实例对象都可以共用此变量.
2.修饰方法
在static修饰方法的时候,该方法不属于成员变量,而是属于类
在调用该方法时,通过类名+方法名进行调用,虽然对象+方法名也可以调用该方法,但是JVM最后也会转换成类+方法名.
注意事项:
(1).静态不可以访问非静态
静态在访问的时候会优先于非静态.所以在静态方法中不能使用非静态方法.举个栗子:秦始皇先出来,他不知道以后会有你这号人物,但是你后出来,你能知道前面有秦始皇这个人.
(2).静态方法中不能使用this
因为静态方法不会属于任何对象,this代表当前对象.所以this不能在静态方法中使用.
3.修饰代码块
在static修饰代码块的时候.静态代码块会优先于非静态代码块.而且只会执行一次.
主要作用:一次性的对静态变量进行赋值.
说到静态代码块,就要提到实例代码块,实例代码块在对象创建时就会执行,并且会在构造方法之前执行,可用于日志记录对象的创建。
主要作用
可以用于书写工具类,直接通过类名直接访问,减少对象的创建。