本文目录
Java里static作用有哪些
Java基础内容里static占据着重要的篇幅,虽然开发中使用static的机会并不多,但是对于static的理解对掌握Java语言却很重要,尤其在资源加载的过程中。
对于static的理解分为两个层面,第一个层面就是关于static在JVM中的定义,第二个层面就是关于static在代码编写中的规则。
static在JVM中的定义决定了static在使用过程中的特点,关于staic在JVM中的定义主要就是存储区域的定义,这是导致一系列static应用特征的根本原因(关于JVM的存储方式的描述我在之前的文章中已经阐述过了,在此就不再赘述,感兴趣的朋友可以关注我并查看之前的文章)。-static
static在编程中的规则是每个Java程序员都应该掌握的,简单的说可以分成4个部分,下面分别做一个描述。
第一部分:static修饰属性。static修饰的属性称为静态属性或者是类属性,有以下几个特点:
static只能修饰成员属性,不能修饰局部属性。
static修饰的属性能够在同一个类的对象间共享。
static修饰的属性随着类的加载而加载,可以用类名直接访问。
看一个例子:
第二部分:static修饰方法。static修饰的方法称为类方法或静态方法,有以下几个特点:
static方法可以通过类的名字直接访问。
static方法无this,也就是说在static方法中不能使用this关键字。
static方法不能被非static方法覆盖。
static方法不能直接访问外部非static方法或属性。
看一个例子:
第三部分:static修饰类。static可以修饰内部类,使用static修饰的内部类自动升级为顶级类,可以直接创建对象并可以在其内部定义static方法。看一个例子:
第四部分:static修饰块。static块随着类的加载而加载,但是只加载一次,是一种介于构造方法和普通方法之间的一种应用。看一个例子:
通过以上的描述,相信大家对static的使用已经有了一个大致上的理解,有一点需要注意,那就是在Web开发中,一定要慎用static修饰符。
我使用Java多年,也出版过Java编程书籍,我会陆续在头条写一些关于Java开发方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。
如果有Java开发方面的问题,也可以咨询我。
谢谢!
静态变量static的作用是什么
作用:有时希望函数中的局部变量的值在函数调用结束后不消失而继续保留原值,即其占用的存储单元不释放,在下一次再调用该函数时,该变量已有值(就是上一次函数调用结束时的值)。
下边简单介绍一下:
static关键字在C语言中用于声明一个静态的局部变量。
这时就应该指定该局部变量为“静态局部变量”,用关键字static进行声明。用静态存储要多占内存(长期占用不释放,而不能像动态存储那样一个存储单元可以先后为多个变量使用,节约内存),而且降低了程序的可读性,因此若非必要,不要多用静态局部变量。-static
希望我的回答对你有所帮助。