🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## [构造器初始化](https://lingcoder.gitee.io/onjava8/#/book/06-Housekeeping?id=%e6%9e%84%e9%80%a0%e5%99%a8%e5%88%9d%e5%a7%8b%e5%8c%96) 可以用构造器进行初始化,这种方式给了你更大的灵活性,因为你可以在运行时调用方法进行初始化。但是,这无法阻止自动初始化的进行,他会在构造器被调用之前发生。因此,如果使用如下代码: ~~~ // housekeeping/Counter.java public class Counter { int i; Counter() { i = 7; } // ... } ~~~ **i**首先会被初始化为**0**,然后变为**7**。对于所有的基本类型和引用,包括在定义时已明确指定初值的变量,这种情况都是成立的。因此,编译器不会强制你一定要在构造器的某个地方或在使用它们之前初始化元素——初始化早已得到了保证。,