(1) static int x=10;
首先在static区定义了一个静态变量X,并赋初值为10。
(2) 下面这两句是构造代码块,作用和构造函数差不多。
static{x+=5;}
static {x/=3;}
在这儿你吧构造代码块放在了static区,相当于静态绑定x的值,代码在编译时就会得到x的值。
而构造函数是在建立对象的时候才会调用。
(3)静态代码块在编译时绑定了x的值,所以
static int x = 10 ; ==>x = 10
static { x + = 5 ;} ==>x = 15
static { x / = 3 ;} ==>x = 5
|