static关键字

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了static关键字相关的知识,希望对你有一定的参考价值。

转载

http://www.cnblogs.com/dolphin0520/p/3799052.html

总结:

  1. static方法和static变量

静态方法在类加载的时候被初始化,内存中只有一个副本,可以直接通过类名进行访问(不依赖任何对象就可以进行访问)。而非静态变量和方法都是创建对象的时候才初始化。而且非静态变量在不同对象中有不同副本,且独立互不影响。因此,一般静态方法加载时还不存在非静态变量或者方法,故静态方法中不能调用非静态成员变量或者非静态方法。而非静态方法中可以调用静态变量或者静态方法(因为它一直在内存里)。Static不能修饰局部变量!

static成员变量的初始化顺序按照定义的顺序进行初始化。

  1. static代码块

static关键字还有一个比较关键的作用就是 用来形成静态代码块以优化程序性能。static块可以置于类中的任何地方,类中可以有多个static块。在类初次被加载的时候,会按照static块的顺序来执行每个static块,并且只会执行一次。

以上是关于static关键字的主要内容,如果未能解决你的问题,请参考以下文章

Java——static关键字

c语言中static关键字

C#中static关键字的作用

static关键字

static关键字

Java知识点:static关键字