Java教程

java的static关键字

本文主要是介绍java的static关键字,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

“static 方法就是没有this的方法。在static方法内部不能调用非静态方法,反过来是可以的。而且可以在没有创建任何对象的前提下,仅仅通过类本身来调用static方法”        -----《java编程思想》

 总结一下static:方便在没有创建对象的情况下来调用(方法/变量)

被static关键字修饰的方法或变量不需要依赖对象来访问,只要类被加载了,就可以通过类名去进行访问。

static内存使用:

static关键字储存在我们的方法区当中的静态常量池中,static修饰的方法、变量和代码块都是可以被用来共享的。

在一个类运行时,会先把它编译成.class文件,文件加载到jvm中,操作系统把jvm调入内存中,.class文件放入方法区,之后static会最先运行放入方法区的静态常量池中,再main方法入栈,所以我们知道static在刚开始就跑了一遍,所以对象是没法使用static静态方法的,只能通过类加载。

static修饰符:

static属于类,

static修饰变量:static修饰的变量属于类变量,被所有该类所产生的的对象共享

static修饰方法:

        this关键字不能再static方法中使用

        静态方法当中不可以使用非静态方法

        非静态方法中可以调用静态方法

static修饰块{}:无论放在那里都是在main方法中运行,可以优化我们的程序

static加载顺序:

        new创建对象时,如果这个类有父类会先把父类的static方法或块按顺序执行一遍,再执行子类中的static方法或块,再然后才执行父类构造器然后是本类构造器。

总结:static总会最先执行。

这篇关于java的static关键字的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!