java中成员变量的初始化,如果是普通成员变量可以赋初值,如果没赋初值,则系统会自动赋初值。而对于局部变量必须手动赋初值。

 

package MyText2;

public class MyText1 {
	int str1;
	public static void main (String []args)
	{
		MyText1 mytext = new MyText1();
		System.out.println(mytext.str1);
	}
}


输出结果:

 

0

也可以声明时直接赋初始值。

 

package MyText2;

public class MyText1 {
	int str1 = 4;
	public static void main (String []args)
	{
		MyText1 mytext = new MyText1();
		System.out.println(mytext.str1);
	}
}


输出结果:

 

4

而对于final变量,系统不会赋初始值,提示错误:空白终态字段 str1 可能尚未初始化

可以声明时直接赋值,也可以通过构造函数:

 

package MyText2;

public class MyText1 {
	final int str1;
	public MyText1(){
		str1 = 5;
	}
	public static void main (String []args)
	{
		MyText1 mytext = new MyText1();
		System.out.println(mytext.str1);
	}
}