构造代码块重要理解

转载于  https://blog.csdn.net/qq_34801506/article/details/81006466

 

用途:

用于类属性的初始化,只被执行一次,避免实体 bean 中的方法重复调用问题

这里写图片描述

这里写图片描述

思考1:

这里写图片描述

思考2:

这里写图片描述

思考3:

这里写图片描述

思考4:

这里写图片描述

思考1答案:20000000000 
思考2答案:20000000000 
思考3答案:10000000000 
思考3答案:30000000000

结论:

    • Java 编译器编译一个 Java 源文件的时候,会把成员变量的声明语句提前至类的最前端
    • 成员变量的初始化工作,其实都是在构造函数中执行的
    • Java 编译器编译后,构造代码块的语句体会被移动到构造函数(的最前端)中执行,构造函数中的语句体在构造代码块的语句体执行完毕后再执行,即构造代码块的代码优先于构造函数中的代码执行
    • 成员变量的显示初始化与构造代码块的代码是按照当前代码的先后顺序执行的

 

 

posted @ 2019-10-09 08:23  Wsnan  阅读(315)  评论(0编辑  收藏  举报