Java static 执行顺序

package com.rainy.main;

import java.util.ArrayList;
import java.util.List;

public class Test extends A {

static List<Object> p = new ArrayList<Object>();

static {
p.add(new Object());
}

public static void main(String[] args) {
System.out.println(p.size());
System.out.println(l.size());
}

}

class A {
static List<Object> l = new ArrayList<Object>();

static {
l.add(new Object());
}
}

 

可以看出,当进入main方法之前,将先执行类中的static,并且,static的执行顺序为先执行父类的static 接着执行子类的static

 

posted on 2016-02-16 11:24  舒润  阅读(483)  评论(0)    收藏  举报

导航