java中的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块的使用方法,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关文章
jsp、struts、spring、mybatis实现前端页面功能模块化拆分的方案
这篇文章主要介绍了 jsp、struts、spring、mybatis实现前端页面功能模块化拆分的方案,非常不错,需要的朋友参考下2017-01-01
SpringMVC框架使用jackson封装数据过程中遇到的问题及解决
这篇文章主要介绍了SpringMVC框架使用jackson封装数据过程中遇到的问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-07-07
SpringBoot项目Jar包使用systemctl运行过程
这篇文章主要介绍了SpringBoot项目Jar包使用systemctl运行过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2025-03-03
mybatis中方法返回泛型与resultType不一致的解决
这篇文章主要介绍了mybatis中方法返回泛型与resultType不一致的解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-07-07
使用mybatis-plus-generator进行代码自动生成的方法
这篇文章主要介绍了使用mybatis-plus-generator进行代码自动生成的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-06-06


最新评论