package Practise;
public class Java2110 {
String name;
String sex;
static int age;
public Java2110(){
name = "tom";
System.out.println("通过构造方法初始化name");
}
{
sex = "男";
System.out.println("通过初始化块初始化sex");
}
static{
age = 20;
System.out.println("通过静态初始化块初始化age");
}
/* public static void main(String[] args){
Java2110 hello = new Java2110();
System.out.println("姓名:"+hello.name+",");
System.out.println("性别:"+hello.sex+",");
System.out.println("年龄:"+age);
Java2110 hello2 = new Java2110();
}
*/
public void AA() {
System.out.println("姓名:"+name+",性别:"+sex+",年龄:"+age);
}
public static void main(String[] args){
Java2110 hello = new Java2110();
}
}
为什么答案是:
通过静态初始化块初始化age
通过初始化块初始化sex
通过构造方法初始化name
需要输出的答案是:
通过静态初始化块初始化age
通过初始化块初始化sex
通过构造方法初始化name
姓名:tom,性别:男,年龄:20
我只是把赋值语句放在了输出语句前面了而已(加黑部分),为什么就出现这样的情况了,大佬能给我解释一下原因吗?
北顾岛城
小卢子_31
_夕晨踏雪
相关分类