很多小伙伴在学习Java时被Static关键字搞得头痛,不知道Static是怎么用的,接下来我带着大家来梳理一下static关键字的用法
几个概念
不带static的方法是实例方法,调用实例方法需要使用 引用. 的方法来调用。
带static的方法或变量是静态方法(变量)。
那么静态是什么意思呢?
我们知道,java的方法或者变量是在类中的。如果要调用一个方法或者变量,我们需要使用 引用. 的方法,表明是哪个对象的哪个方法,意思就是,对象不同的话,方法或者变量的内容也就不同。但如果这个方法是静态的,那么就说明,这个类的任意一个对象的方法都是这样的,都是不变的。这个方法升级成了类的动作。访问的时候可以使用 类名. 的方式
静态方法显然无法访问实例方法(想想为什么?)
工具类中的方法多数都是静态方法
例如:
Math.random();
就是类名调用的方法。
静态代码块
语法格式:
static{
语句;
}
在类加载的时候执行,并且只执行一次
可以用来记录日志
可以用来在类加载时这个特殊的时刻干点什么事
同时呢还有不带static的代码块,叫做实例代码块,这块代码在构造函数之前执行。