A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

/*
        代码块,显示初始化,构造函数初始化的执行顺序,
        1.代码块和显示初始化的赋值都是在构造函数中执行的(java编译器完成的),而且优先于构造函数的赋值。
        2.代码块和显示初始化的执行顺序是按照类定义中的前后顺序决定的。
        3.编译时,java编译器将会把属性移动到最前面(但显示初始化是在构造函数中执行的)。
*/

class  Demo7
{
        public static void main(String[] args)
        {
                Test1 test1=new Test1();
                Test2 test2=new Test2();
                Test3 test3=new Test3();
                Test4 test4=new Test4();
        }
}

class Test1
{
        int i=10000;

        {
                i=20000;
        }

        public test(){
                i=30000;
        }
       
        //输出i为30000因为原则1
        public void printi(System.out.println(i));
}


class Test2
{
        public test(){
                i=30000;
        }

        int i=10000;

        {
                i=20000;
        }
       
        //输出i为30000因为原则1
        public void printi(System.out.println(i));
}

class Test3
{
        int i=10000;
        {
                i=20000;
        }
        //输出i为20000因为原则2
        public void printi(System.out.println(i));
}

class Test4
{
        {
                i=20000;
        }
        int i=10000;
        //输出i为10000因为原则2
        public void printi(System.out.println(i));
}

1 个回复

正序浏览
你是在传智上基础班么?这个题目。。。。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马