static关键字(学习记录)

来源:互联网 发布:大数据市场分析报告 编辑:程序博客网 时间:2024/09/21 09:01

static关键字

1、被static修饰的方法为类方法,变量为类变量。可以通过类名.变量名直接引用,而不需要实例化一个类来调用。被static修饰过的方法或者变量属于静态资源,可以被所有类实例调用。

2、java将静态变量放在不同的类中,而不是在一个类中,是为了实现静态资源的分类以及避免重名的发生。

3、静态资源属于类,但是又区别与类,独立存在。在jvm加载机制中,静态资源属于优先加载初始化的。所以经常会出现的几个问题:

1、静态资源能否调用非静态资源(不能,因为静态资源优先加载,而非静态资源需要通过new类实例的时候加载。)

2、静态资源能否调用静态资源(可以,因为都是同时初始化的)

3、非静态资源能否调用静态资源(可以,因为静态资源已经初始化了,属于类共有的,非静态资源可以调用。)

4、静态代码块

1、静态代码块对于其后定义的变量,可以赋值,但是无法访问。

2、静态资源的加载顺序完全按照静态资源的定义顺序来加载的。

3、静态代码块是按照父类静态代码块到子类静态代码块的顺序加载的,并且只加载一次。

5、static修饰匿名内部类。


(学习总结)

原创粉丝点击