java中的static{}块的实例详解

 更新时间:2017年08月21日 11:18:24   投稿:lqh  
这篇文章主要介绍了java中的static{}块的实例详解的相关资料,这里提供实例来帮助大家理解该如何使用static块,需要的朋友可以参考下

java中的static{}块的实例详解

一直以来对static块不是很熟系,今天特意写了两个程序来搞清楚一下:

第一个小程序:

package com.babyDuncan.Sohu; 
 
public class testStatic { 
 
  static 
  { 
    int x = 5; 
  } 
 
  static int x, y; 
 
  public static void main(String[] args) { 
    x--; 
    myMethod(); 
    System.out.println(x + y + ++x); 
  } 
 
  public static void myMethod() 
  { 
    y = x++ + ++x; 
  } 
 
} 

该程序输出为:3

分析如下:

执行main中的x--之后,x值为-1,执行myMethod之后,x为1,y值为0,执行输出语句表达式,该表达式的值为1+0+2=3,所以输出结果是3.

下一个程序会让你更明白其中的道理:

package com.babyDuncan.Sohu; 
 
public class testStatic2 { 
  /** 
   * 关于Static{}块的解释: 
   * 只是在执行main之前执行的一些语句而已,并不是说里面的变量就是 
   * static的,没什么特别的。 
   * 临时变量只在static这个大括号中有用。 
  **/ 
  static { 
    int x = 8; 
    System.out.println("我是static,我有一个变量x="+x); 
  } 
 
  static int x; 
 
  public static void main(String[] args) { 
    // TODO Auto-generated method stub 
    System.out.println(x); 
  } 
 
} 

输出结果为:

我是static,我有一个变量x=8 
0 

以上就是java static块的使用方法,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • SpringBoot配置项目访问路径URL的根路径方式

    SpringBoot配置项目访问路径URL的根路径方式

    这篇文章主要介绍了SpringBoot配置项目访问路径URL的根路径方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • MyBatis如何使用PageHelper实现分页查询

    MyBatis如何使用PageHelper实现分页查询

    这篇文章主要介绍了MyBatis如何使用PageHelper实现分页查询,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • Java SpringBoot整合shiro-spring-boot-starterqi项目报错解决

    Java SpringBoot整合shiro-spring-boot-starterqi项目报错解决

    这篇文章主要介绍了Java SpringBoot整合shiro-spring-boot-starterqi项目报错解决,文章围绕主题展开详细的内容介绍,具有一定的参考一下
    2022-08-08
  • Java多线程之ReentrantReadWriteLock源码解析

    Java多线程之ReentrantReadWriteLock源码解析

    这篇文章主要介绍了Java多线程之ReentrantReadWriteLock源码解析,文中有非常详细的代码示例,对正在学习java基础的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-05-05
  • Mybatis动态SQL的实现示例

    Mybatis动态SQL的实现示例

    这篇文章主要介绍了Mybatis动态SQL的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • 运用springboot搭建并部署web项目的示例

    运用springboot搭建并部署web项目的示例

    这篇文章主要介绍了运用springboot搭建并部署web项目的示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-06-06
  • java实现合并2个文件中的内容到新文件中

    java实现合并2个文件中的内容到新文件中

    这篇文章主要介绍了java实现合并2个文件中的内容到新文件中,思路非常不错,这里推荐给大家。
    2015-03-03
  • Java的jmap命令的具体使用

    Java的jmap命令的具体使用

    jmap是JDK提供的一个可以生成Java虚拟机的堆转储快照dump文件的命令行工具,本文主要介绍了Java的jmap命令的具体使用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • Java中如何实现不可变Map详解

    Java中如何实现不可变Map详解

    这篇文章主要给大家介绍了关于Java中如何实现不可变Map的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作工具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-12-12
  • Ribbon的饥饿加载(eager-load)模式解读

    Ribbon的饥饿加载(eager-load)模式解读

    这篇文章主要介绍了Ribbon的饥饿加载(eager-load)模式解读,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04

最新评论