面向对象-代码块的概述和分类

代码块的定义:

  在java中使用{ }括起来的代码被称为代码块

代码块的分类:

  根据其位置和声明的不同,可以分为局部代码块,构造代码块,静态代码块,同步代码块。

局部代码块:

  在方法中出现,用于限定变量的声明周期,及早释放,提高内存的利用率。

  多个局部代码块的执行顺序:从上到下依次执行

构造代码块

  在类中方法外(在类中的成员位置),用{}括起来的代码,每次调用构造方法都会执行该代码块,并且在构造方法前执行

    作用: 将多个构造方法中相同的代码存放在一起,减少代码重复

  构造代码块不管是放在构造方法前面或者后面,都要先于构造方法被执行

静态代码块

  在类中方法外,用{}括起来的代码

  与构造代码块不同的是,其前加了static修饰。

  用于给类进行初始化,并且是在类加载的时候执行,且只执行一次。静态是随着类的加载而加载

  构造代码块是对对象进行初始化,

面试题:

构造代码块,构造方法,静态代码块的执行顺序?

先静态代码块,只执行一次

后构造代码块,每次调用构造方法都会执行

最后构造方法

  

原文地址:https://www.cnblogs.com/happy520/p/6673588.html