澳门威斯尼斯平台app也就是说在实例化这个对象时会从类的头到尾检索一遍来运行初始化代码块

当前位置:澳门威斯尼斯平台app > 澳门威斯尼斯平台app > 澳门威斯尼斯平台app也就是说在实例化这个对象时会从类的头到尾检索一遍来运行初始化代码块
作者: 澳门威斯尼斯平台app|来源: http://www.duongvenha.com|栏目:澳门威斯尼斯平台app

文章关键词:澳门威斯尼斯平台app,初始代码块

  在Java中存在代码块这一结构这一结构又主要分为普通代码块和初始化代码块两类。

  普通代码块仅出现于方法中起到分隔不同功能代码的作用其运行顺序依据代码块出现的先后。澳门威斯尼斯平台app

  初始化代码块出现于类的主体中在类的声明中可以包含多个初始化块当创建类的实例时就会依次执行这些代码块。如果使用 static 修饰初始化块就称为静态初始化块。澳门威斯尼斯平台app

  这些初始化代码块起到了类的构造方法的作用当无参实例化一个类的对象时完全可以用代码块代替构造方法的位置。

  非静态初始化块隐性运行于创建类的对象时顺序依据代码块的先后排列且这些代码块间可以存在其他方法。也就是说在实例化这个对象时会从类的头到尾检索一遍来运行初始化代码块。

  1.这些静态代码块运行于类的初始化方法之前且因为其没有名称故只会在创建对象时隐性运行一次。

  现在再说静态初始化代码块静态初始化代码块又被称为是“类初始化代码块”因其早在系统将类初始化时就执行了而不是在创建对象时执行。同时静态初始化块只能给静态变量赋值不能初始化普通的成员变量。澳门威斯尼斯平台app

  而且要注意的是系统在初始化类时不仅会初始化该类中的静态初始化代码块还回上溯到引用的包中的类的静态初始化代码块。

网友评论

我的2016年度评论盘点
还没有评论,快来抢沙发吧!