为了账号安全,请及时绑定邮箱和手机立即绑定

怎么回事啊 我在静态代码块里定义了一个sss并且初始化 show方法里输出不了sss

public class HelloWorld {

    

    String name; // 声明变量name

String sex; // 声明变量sex

static int age;// 声明静态变量age

    

    // 构造方法

public    HelloWorld    () { 

System.out.println("通过构造方法初始化name");

name = "tom";

}

    

    // 初始化块

System.out.println("通过初始化块初始化sex");

sex = "男";

}

    

    // 静态初始化块

    static   { 

System.out.println("通过静态初始化块初始化age");

age = 20;

int sss=50;

}

    

public void show() {

System.out.println("姓名:" + name + ",性别:" + sex + ",年龄:" + age+"-----"+sss);

}

    

    

    

    

    

    

    

    

    

    

    

public static void main(String[] args) {

        

        // 创建对象

HelloWorld hello = new HelloWorld();

// 调用对象的show方法

        hello.show();

        

}

}


正在回答

2 回答

兄弟,静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。

0 回复 有任何疑惑可以回复我~
#1

Administratoc 提问者

非常感谢!
2018-02-27 回复 有任何疑惑可以回复我~

在静态初始化块中不能定义sss,必须在类中定义静态sss,在静态初始块中初始化。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

怎么回事啊 我在静态代码块里定义了一个sss并且初始化 show方法里输出不了sss

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号