java中代码执行顺序

Posted 迷影遮忆

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中代码执行顺序相关的知识,希望对你有一定的参考价值。

之前面试的时候有一道题,是考java的代码执行顺序的。

在大三的时候学习java语言的时候有说,但是在实际工作中用的比较少,所以在这里重新记录复习一下。

比如下面这段代码:

class helloA{
    public helloA(){
        System.out.println("helloA");
    }

    {
        System.out.println("I‘m A");
    }

    static {
        System.out.println("Static A");
    }
}

class helloB extends helloA{
    public helloB(){
        System.out.println("helloB");
    }

    {
        System.out.println("I‘m B");
    }

    static {
        System.out.println("Static B");
    }
}

public class A {
    public static void main(String[] args) {
        new helloB();
    }
}

执行的结果是:

Static A
Static B
I‘m A
helloA
I‘m B
helloB

首先从父类开始执行了所有的static代码块,然后从父类开始,先执行代码块,然后执行构造方法(构造函数)。

以上是关于java中代码执行顺序的主要内容,如果未能解决你的问题,请参考以下文章

Java中代码块执行顺序

Java中代码的执行顺序

继承中代码的执行顺序

Javascript中代码的执行顺序是啥?

html中代码执行顺序

java中代码发生异常后 程序会怎么执行?