Java中静态变量的适用场景

开发 后端
静态变量的类型说明符是static。静态变量当然是属于静态存储方式,但是属于静态存储方式的量不一定就是静态变量。本文主要介绍的是JAVA中静态变量的使用场景,一起来看。

静态变量的类型说明符是static。静态变量当然是属于静态存储方式,但是属于静态存储方式的量不一定就是静态变量,例如外部变量虽属于静态存储方式,但不一定是静态变量,必须由 static加以定义后才能成为静态外部变量,或称静态全局变量。

对于自动变量,它属于动态存储方式。但是也可以用static定义它为静态自动变量,或称静态局部变量,从而成为静态存储方式。由此看来,一个变量可由static进行再说明,并改变其原有的存储方式。

Java类中的静态变量在程序运行期间,其内存空间对所有该类的对象实例而言是共享的,有些时候可以认为是全局变量。因此在某些时候为了节省系统内存开销、共享资源,可以将类中的一些变量声明为静态变量,通过下面的例子,你可以发现合理应用静态变量带来的好处:

Java代码

 

public class WeekA{  
static class Data {  
private int week;  
private String name;  
Data(int i, String s) {  
week= i;  
name = s;  
}  
}  
Data weeks[] = {  
new Data(1"Monday"), new Data(2"Tuesay"), new Data(3"Wednesday"), new Data(4"Thursday"), new Data(5"Friday"), new Data(6"Saturday"), new Data(7"Sunday")  
};  
public static void main(String args[]) {  
final int N = 10000;  
WeekA weekinstance;  
for (int i = 1; i <= N; i++){  
weekinstance = new WeekA ();  
}  
}  
}   
public class WeekA{  
static class Data {  
private int week;  
private String name;  
Data(int i, String s) {  
week= i;  
name = s;  
}  
}  
Data weeks[] = {  
new Data(1"Monday"), new Data(2"Tuesay"), new Data(3"Wednesday"), new Data(4"Thursday"), new Data(5"Friday"), new Data(6"Saturday"), new Data(7"Sunday")  
};  
public static void main(String args[]) {  
final int N = 10000;  
WeekA weekinstance;  
for (int i = 1; i <= N; i++){  
weekinstance = new WeekA ();  
}  
}  

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.

希望本文能给你带来帮助。

【编辑推荐】

  1. Java中ArrayList和LinkedList区别
  2. JSONP跨域原理和jQuery.getJSON用法
  3. JavaBean中使用JDBC方式进行事务处理
  4. 如何在Java应用程序中动态分配CPU资源
  5. 详细解析Java中抽象类和接口的区别
责任编辑:于铁 来源: 考试大
相关推荐

2011-06-02 14:25:45

静态变量

2011-07-11 16:13:01

Java静态变量实例变量

2023-10-07 15:53:05

C/C++静态变量内存

2023-12-04 09:37:00

C++静态变量

2023-11-29 07:43:30

2020-06-16 15:40:32

闭锁栅栏线程

2023-12-29 08:27:36

C语言静态变量开发

2019-06-17 16:17:03

存储MySQL主流

2009-08-27 10:44:21

C#静态变量

2010-03-02 16:50:34

WCF返回值

2024-10-11 11:50:05

Redis适用场景

2009-11-27 15:13:00

PHP静态变量stat

2011-08-10 17:16:01

Objective-C静态变量

2009-10-28 09:47:01

VB.NET局部静态变

2010-06-30 17:02:07

静态路由

2018-01-25 19:09:40

JavaThreadLocal线程

2020-12-10 10:11:52

Javastatic关键字

2009-06-05 10:43:29

struts2 checheckbox实例

2009-08-31 10:00:07

C#静态变量

2015-01-16 11:30:07

Openstack分布式存储
点赞
收藏

51CTO技术栈公众号