Java 对象字段是用什么初始化的?
2022-09-05 00:09:33
是针对类型吗?null
Object
class C {
int i;
String s;
public C() {}
}
会永远?s
null
那么简单类型作为 ?那会是什么?零还是任意值?int
方法中的局部变量呢?
public void meth() {
int i;
}
的单位化值是多少?i
但是,依赖这些默认值通常被认为是糟糕的编程风格。
好的,你建议我们做什么?
class A {
String s = "";
int i = 0;
}
或:
class A {
String s;
int i;
public A() {
// default constructor
s = "";
i = 0;
}
}
哪个更好,为什么?