Java static 关键字
# static关键字
**概念:可以用来修饰`属性`,`方法`,`代码块`,`内部块`**
- 随着类的加载而加载
- 优先于对象存在
- **修饰的成员,被所有对象共享**
## static修饰的属性(静态成员变量)
**`静态属性`是类的所有对象共享的,静态属性在内存中只有一个**
- 静态变量的默认值规则和实例变量一样
- 静态对象在本类中,可以在任意方法代码块,构造器中直接使用
- 可以通过**类名.静态变量**直接访问,也可以通过**对象.静态变量**的方式访问(**更推荐类名.静态变量的方式**)
```java
static String name="zhangsan";
static修饰的方法(静态方法)
静态方法
在本类中,可以在任意方法代码块,构造器中直接使用- 调用方式类似于静态变量
- 注:在
static方法
内部只能访问类的static修饰
的属性
或方法
,不能访问类的非static的成员
,但是非静态方法可以调用静态成员变量
- 因为不需要实例就可以访问
static方法
,因此static方法
内部不能有this
和super
使用环境:当某种属性重复使用或某种方法与成员变量无关时,应设计成静态属性和静态方法,这样可以提高程序运行效率,节省运行所需内存
本文来自博客园,作者:Yang0710,转载请注明原文链接:https://www.cnblogs.com/cwyYYDS/p/18213929