static块和static定义变量
关于static语句块儿和初始化静态变量的一些联系:
class StaticDemo
{
?static
?{
??_i=20;
?}
?public static int _i=10;
?public static void main(String[] args)
?{
??System.out.println(_i);?
?}
}
?
结果输出多少呢?
其实本段代码等价于:
class StaticDemo
{
?static
?{
??_i=20;
?}
???public static int _i;
??static
???{
????_i=10;
???}
?public static void main(String[] args)
?{
??System.out.println(_i);?
?}
}
?
继续等价于:
?
class StaticDemo
{
???public static int _i;
??static
???{
?????? _i=20;
????? ?_i=10;
???}
?public static void main(String[] args)
?{
??System.out.println(_i);?
?}
}
显然结果输出:10