当前位置: 技术问答>java相关
一个关于变量初始化的问题?进来看看
来源: 互联网 发布时间:2015-03-03
本文导语: //**************** public class Test{ static int sn; int n; final static int fsn; //1 final int ...
//****************
public class Test{
static int sn;
int n;
final static int fsn; //1
final int fn; //2
}
//****************
大家看看上面这个程序编译的时候是注释1的地方出错还是2的地方出错,或者1和2都错?
为什么?
还有,资料上提供了下面3个解决方法,我对第2个方法的注释处不太理解,谁能解释一下?
//****************
public class Test{
static int sn;
int n;
final static int fsn = 3;
final int fn = 6;
}
//****************
//****************
public class Test{
static int sn;
int n;
final static int fsn;
final int fn;
static {fsn=6;}
{fn =8;}//这个语句块没有访问控制符,又是在class level的,到底算方法还是什么啊?
}
//****************
//****************
public class Test{
static int sn;
int n;
final static int fsn;
final int fn;
static {fsn=6;}
Test(){
fn =8;
}
Test(int pn){
fn =pn;
}
}
//****************
public class Test{
static int sn;
int n;
final static int fsn; //1
final int fn; //2
}
//****************
大家看看上面这个程序编译的时候是注释1的地方出错还是2的地方出错,或者1和2都错?
为什么?
还有,资料上提供了下面3个解决方法,我对第2个方法的注释处不太理解,谁能解释一下?
//****************
public class Test{
static int sn;
int n;
final static int fsn = 3;
final int fn = 6;
}
//****************
//****************
public class Test{
static int sn;
int n;
final static int fsn;
final int fn;
static {fsn=6;}
{fn =8;}//这个语句块没有访问控制符,又是在class level的,到底算方法还是什么啊?
}
//****************
//****************
public class Test{
static int sn;
int n;
final static int fsn;
final int fn;
static {fsn=6;}
Test(){
fn =8;
}
Test(int pn){
fn =pn;
}
}
//****************
|
好好看看关于绑定的问题
|
创建“空白final”,它们属于一些特殊的字段。尽管被声明成final,但却未得到一个初始值。无论在哪种情况下,空白final都必须在实际使用前得到正确的初始化。
static 启动一个初始化动作。
static 启动一个初始化动作。