/*
* 在Java中,有三种对于成员变量进行赋初值的操作:
* 1. 定义时初始化
* 2. 构造代码块
* 3. 构造函数
*
* 优先级问题:
* 如果在代码中存在构造方法,那么成员变量的值按照构造方法中的为准
* 如果只有构造代码块和定义时初始化,那么谁在后,谁就决定最终值
* */
class Test{
int num = 1000;
{
num = 2000;
}
public Test(){
num = 3000;
}
}
public class 初始化成员变量 {
public static void main(String[]args){
Test t = new Test();
// 最终结果为3000
System.out.println(t.num);
}
}
java中初始化成员变量的优先级
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 依上图中当class字节码文件被jvm虚拟机加载到内存中依次经过 连接验证:对字节码进行验证准备:给静态变量分配内...
- 如下图所示: 上图中b、c、d在类base中声明的顺序就是b、c、d,但是在初始化列表中的顺序是b、d、c,并且我...
- 构造器初始化顺序 输出结果 Tag(1)Tag(3)Tag(2)Card()Tag(33)f() 结论 首先自上而...