Java中静态变量的适用场景

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

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

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

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

Java代码

 

  1. public class WeekA{  
  2. static class Data {  
  3. private int week;  
  4. private String name;  
  5. Data(int i, String s) {  
  6. week= i;  
  7. name = s;  
  8. }  
  9. }  
  10. Data weeks[] = {  
  11. 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")  
  12. };  
  13. public static void main(String args[]) {  
  14. final int N = 10000;  
  15. WeekA weekinstance;  
  16. for (int i = 1; i <= N; i++){  
  17. weekinstance = new WeekA ();  
  18. }  
  19. }  
  20. }   
  21. public class WeekA{  
  22. static class Data {  
  23. private int week;  
  24. private String name;  
  25. Data(int i, String s) {  
  26. week= i;  
  27. name = s;  
  28. }  
  29. }  
  30. Data weeks[] = {  
  31. 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")  
  32. };  
  33. public static void main(String args[]) {  
  34. final int N = 10000;  
  35. WeekA weekinstance;  
  36. for (int i = 1; i <= N; i++){  
  37. weekinstance = new WeekA ();  
  38. }  
  39. }  

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

【编辑推荐】

  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

2023-12-29 08:27:36

C语言静态变量开发

2020-06-16 15:40:32

闭锁栅栏线程

2009-08-27 10:44:21

C#静态变量

2019-06-17 16:17:03

存储MySQL主流

2010-03-02 16:50:34

WCF返回值

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

静态路由

2020-12-10 10:11:52

Javastatic关键字

2018-01-25 19:09:40

JavaThreadLocal线程

2009-08-31 10:00:07

C#静态变量

2009-06-05 10:43:29

struts2 checheckbox实例

2024-01-30 09:43:43

Java缓存技术

2015-01-16 11:30:07

Openstack分布式存储
点赞
收藏

51CTO技术栈公众号