在Java语言中,初始化值,可以区分两种形式,一种是基本变量初始化;另一种则是对象初始化。基本类型初始化,又分为默认初始化和显式初始化,如:
显式初始化 默认初始化结果:
测试结果Java基本类型初始化,默认值是默认为相应类型值的0;然而对象的默认值则为null;对于数组的默认值,只要定义了数组的长度后,每个值也是相应类型值的0;String与对象默认值为null。
数组 结果对于对象来说,值是如何初始化呢。Java官方告诉我们,对象初始化是通过new 关键词为对象开辟一段内存空间,然而new 后面则其实是该类的构造方法如:String str =new String();
String()是String默认的无参构造方法,当new声明开辟内存空间后,看源码可知值为"",因为重写了构造方法:
public String() {
this.value ="".value;
}
。如要显式声明值,则可以重载构造方法:如:
String类若类重载构造方法后,则不会有默认无惨构造方法,需要手动重新一遍。
当然对于一些静态类的值和初始化一次再也不会变的值,也可以通过static代码块来初始化,如:
当代码第一次调用时赋值。当然还可以通过static方法是进行淋湿给类赋值,此方法多勇于工具类;
StringUtils工具类当然还有其他方法,如反射等,此处不再列举,自行查找资料。
网友评论