您的位置:首页 > 编程语言

静态代码块与非静态代码块加载顺序

2013-10-14 15:08 302 查看
二、静态代码块与非静态代码块加载顺序

public class StaticFieldTest {

static String name;

static int age;

static{

System.out.println("静态初始化代码块");

name = "bit";

age = 1;

}

{

System.out.println("非静态初始化代码块");

name = "byte";

}

public StaticFieldTest(String str,int i) {

name = str;

age = i;

}

public void print(){

System.out.println("name:"+StaticFieldTest.name);

System.out.println("age:"+StaticFieldTest.age);

}

public static void main(String[] args) {

System.out.println("name:"+StaticFieldTest.name);

System.out.println("age:"+StaticFieldTest.age);

StaticFieldTest test1 = new
StaticFieldTest("byte",8);

test1.print();

StaticFieldTest test2 = new
StaticFieldTest("int",32);

test2.print();

}

}
测试结果:





静态初始化代码块优先加载,且只加载一次。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: