`

[转贴]java static 代码块的应用

阅读更多
http://www.54xue.com/viewnews-4863.html
public class Test5 { 
private static int a; 
private int b; 

static{ 
Test5.a=3; 
System.out.println(a); 
Test5 t=new Test5(); 
t.f(); 
t.b=1000; 
System.out.println(t.b); 
} 
static{ 
Test5.a=4; 
System.out.println(a); 
} 
public static void main(String[] args) { 
} 
static{ 
Test5.a=5; 
System.out.println(a); 
} 
public void f(){ 
System.out.println("hhahhahah"); 
} 
} 



运行结果:
3
hhahhahah
1000
4
5
分析:
static 代码块也叫静态代码块,是在类中独立于类成员的static语句块,可以有多个,位置可以随便放,它不在任何的方法体内,JVM加载类时会执行这些静态的 代码块,如果static代码块有多个,JVM将按照它们在类中出现的先后顺序依次执行它们,每个代码块只会被执行一次 ( 我记得蓝色之路里就有这么一道类似的变态题目)

-------------------------------------------------------------
http://yahaitt.iteye.com/blog/143457
静态代码块的执行顺序
补充:


在有类内非静态代码块的情况下,执行顺序应该如下:

静态代码块的执行顺序:

1.父类的静态代码块

2.子类的静态代码块

3.父类的非静态代码块

4.父类的构造函数

5.子类的非静态代码块

6.子类的构造函数
================================================
//静态代码块的执行顺序

 
import static java.lang.System.out;

class Bird
{
	
	
	public Bird()
	{
		out.print("b2 ");
	}
	
	{out.print("b1 ");}
	
	static 
	{
		out.print("bs0 ");
	}
}

class Raptor extends Bird
{
	static 
	{
		out.print("rs1 ");
	}
	
	public Raptor()
	{
		out.print("r2 ");
	}
	
	{
		out.print("r3 ");
	}
	
	static
	{
		out.print("rs4 ");
	}
}

public class G015 extends Raptor{
	public static void main(String[] args) {
		out.print("pre ");
		new G015();
		out.println("G015  ");
	}

}


输出结果应为:
bs0 rs1 rs4 pre b1 b2 r3 r2 G015 
分享到:
评论
1 楼 dk101 2010-09-14  
这个很有用哈,设计类时,很有意义,面试时,也经常涉及到的。

相关推荐

    使用Struts2开发Java Web应用程序(转贴)

    使用Struts2开发Java Web应用程序(转贴)

    android和java面试大全集

    史上最全的android和java面试文档集。包括有: java程序员面试宝典.txt Java面试宝典2011版-1C,Java基础部分.doc 三大框架面试题.zip 技术面试题.zip Android笔试题库 C语言终极面试宝典.doc Java笔试题目汇总.pdf ...

    Html处理软件、转贴工具(源代码)

    去除Html中的干扰码等(样例中以轻之国度的干扰码为例) 配置文件语法: 方法类型(整数) 最大匹配长度(整数) 字符串1(删除开头) 字符串2(删除结尾) 方法类型: 1:删除单行 2:删除行与行之间的

    flex和java进行CRUD操作(转贴)

    博文链接:https://tj007-bo.iteye.com/blog/128169

    JAVA经典素材100

    java实用程序设计100例原代码和素材下载,象征性的1分!大家支持下哈! 转贴的资源

    史上最全的转贴代码

    NULL 博文链接:https://coolzhi.iteye.com/blog/692293

    论坛转贴源代码

    论坛转贴工具提供常的转换追加,转换覆盖,预览贴子,分析超链接,屏蔽文字,图片,超链接,提供查找,替换等功能,HTML版! 支持IE浏览器,360浏览器,搜狗浏览器,火狐浏览器,谷歌chrome浏览器等主流浏览器,无需...

    BFC UBB转贴器

    这是一个类似论坛转贴工具的小程序,可以将剪贴板中的HTML代码转换为论坛支持的UBB代码。 由于现在流行的转贴工具都是基于浏览器的,转换速度比较慢,还得打开浏览器才能使用(同时受到浏览器版本限制)。 <br...

    脚本之家贴图转换+转贴工具用到的js代码超级推荐

    脚本之家贴图转换+转贴工具用到的js代码超级推荐

    易语言动网转贴.rar

    易语言动网转贴.rar 易语言动网转贴.rar 易语言动网转贴.rar 易语言动网转贴.rar 易语言动网转贴.rar 易语言动网转贴.rar

    Java 学习资料 ppt

    Java 学习资料 ppt 第一次编写Java程序的步骤(假设使用Windoz)转贴 发布时间:2006.04.30 07:54 来源:月光软件站 作者: 对《第一次编写Java程序的步骤(假设使用Windoz)》的说明:

    易语言源码动网转贴.rar

    易语言源码动网转贴.rar 易语言源码动网转贴.rar 易语言源码动网转贴.rar 易语言源码动网转贴.rar 易语言源码动网转贴.rar 易语言源码动网转贴.rar

    jquery的转贴功能实现

    jquery的转贴功能实现,一些网站的转贴链接都在里面有封装

    东度极品论坛转贴工具

    东度极品论坛转贴工具东度极品论坛转贴工具

    动网转贴.e.rar

    动网转贴.e.rar

    Java 实用经验

    做JAVA时记录的经验500多篇。包括转贴的。应该对初学和未遇此类问题的人有点用处。

    [转贴]软件测试 从零开始

    [转贴]软件测试 从零开始

Global site tag (gtag.js) - Google Analytics