【发布时间】:2016-10-07 07:18:27
【问题描述】:
我了解,构造函数用于初始化实例变量。 默认构造函数将由编译器自己创建,如果我们没有创建相同的。 如果我们正在创建参数化构造函数,那么编译器将不会创建默认构造函数。 我写了一个代码,忽略构造函数要处理的实例变量。但它在没有构造函数的情况下被初始化。如何在没有构造函数的情况下初始化变量? 请在下面找到代码sn-p以便更好地理解
public class ClassWithoutDefault {
int number;
String name;
//Intailizing name variable alone by using parameterized constructor
ClassWithoutDefault(String name){
this.name = name
}
void show(){
System.out.println("Name is"+name+"Number is"+number );
}
}
//Main class
public class ConstructorTest {
public static void main(String[] args) {
ClassWithoutDefault classWithoutDefault = new ClassWithoutDefault("Hari");
classWithoutDefault.show();
}
}
输出
Name is Hari
Number is 0
在没有构造函数的情况下,变量 number 是如何被初始化为 0 的?谁能帮我理解一下?
【问题讨论】:
-
docs.oracle.com/javase/tutorial/java/nutsandbolts/… - 检查有关默认值的部分
标签: java constructor