首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

种继承中构造方法与static块调用顺序浅析【转】

2012-10-07 
类继承中构造方法与static块调用顺序浅析【转】1) 类中Static{}代码段会在该类第一次访问里被调用,并且仅被

类继承中构造方法与static块调用顺序浅析【转】




1) 类中Static{}代码段会在该类第一次访问里被调用,并且仅被调用一次

2) 由于类中构造方法会默认地或显示的调用父类的构造方法,这样类在实例化时(即调用构造器方法),会优先调用构造器方法。

如下程序:

class Firework{    static {        System.out.println("Hello" );    }    public Firework () {        System.out.println("Firework 0" );    }}class Fountain extends Firework {    static {        System.out.println("World" );    }    public Fountain() {        // TODO Auto-generated constructor stub        System.out.println("Fountain 0" );    }}



现有一段代码如下:

Firework f = new Fountain();


运行输出为

Hello

World

Firework 0

Fountain 0

由输出可知Java对类中static块执行策略是:优先深度遍历所有类的static{}块,其次再遍历类的构造器

?

热点排行