现在才知道Java中变量声明可以放在赋值后面。。。

来源:互联网 发布:无线路由器mac绑定 编辑:程序博客网 时间:2024/05/17 22:35

下面的代码需要注释其他的单独测试

public class Member {
// 1
{
a = 1;
// System.out.println(a);//按代码顺序执行,没有声明可以先赋值但不能使用,这里会抛错。
}
private int a = 2;


// 2
{
b = 3;
}
private final int b;


// 3
{
c = 4;
}
private static int c;


// 4
{
d = 5;
System.out.println("-----------");
}
private static int d;


// 5
static {
e = 6;
}
private static int e;


public static void main(String[] args) {
Member test1 = new Member();
System.out.println(test1.a);//用Debug调试发现a先为0,然后为1,最后为2输出
Member test2 = new Member();
System.out.println(test2.b);//final只能赋值一次没什么,结果为3
Member test3 = new Member();
System.out.println(test3.c);//结果为4
System.out.println(d);//与上一个相同就是没有new对象赋值代码就不执行了,结果为0(其他注释的情况下)
System.out.println(e);//静态代码块一开始就会执行所以结果为6
}


}

阅读全文
0 0
原创粉丝点击