在 android 源代码中,我看到他们将四个变量定义为
protected int mPaddingRight = 0;
protected int mPaddingLeft = 0;
protected int mPaddingTop;
protected int mPaddingBottom;
在Java中,将变量初始化为0和不初始化有什么区别?我不明白在某些编译器中我无法进行比较,除非我初始化该字段。但这里不是这种情况。这与优化有关吗?或者这只是不一致/错误的编码实践?
原文由 Nouvel Travay 发布,翻译遵循 CC BY-SA 4.0 许可协议
根据 Java 原始数据类型 turorial ,所有原始数据类型都有一个默认值。所以初始化是隐式的。一个好的做法:在使用之前初始化值以防止意外行为。