Java代码块

来源:互联网 发布:最近很火的网络歌曲女 编辑:程序博客网 时间:2024/06/05 11:45

1.局部代码块

          局部代码块位于方法中,每个方法中可以有多个局部方法块,按顺序执行,方法块中定义的变量作用范围只在当前代码块。

2.成员代码块

        成员代码块位于类中,每个类中可以存在多个成员代码块,按顺序执行,执行顺序优先于构造方法,并且每new一次对象都会执行一次成员代码块。
        成员代码块可以对类的属性初始化,但使用率较低。

3.静态代码块

        静态代码块位于类中,每个类中可以存在多个静态代码块,按顺序执行,在第一次加载类的时候执行,只执行一次。
        静态代码块用来给静态变量初始化,执行一些全局性的初始化操作。

4.关于属性赋值顺序

        1、默认初始化
        2、显示初始化(或成员代码块初始化),决定两者的位置,谁在上谁先执行
        3、构造方法初始化
        4、方法中对对象的属性进行修改

     下面看代码

public class Block {{System.out.println("block 1");}public Block(){System.out.println("构造方法");}static{System.out.println("static block 1");}{System.out.println("block 2");}public static void main(String[] args) {{System.out.println("method block 1");}new Block();System.out.println("===============");new Block();{System.out.println("method block 2");}}static{System.out.println("static block 2");}}


         执行结果
static block 1static block 2method block 1block 1block 2构造方法===============block 1block 2构造方法method block 2