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

小新人求教

public class Person {
     public String sore ;
     public String language ;
    public Person(){
        System.out.println("每个人都有着自己的语言。");
        System.out.println("就好像"+sore+"说"+language);
    }
    public static void main(String[] args){
        String sore = "中国人";
        String language = "中文";
        new Person();
    }
}
   
为什么无法赋值sore,language

正在回答

3 回答

main()里定义的sore和language与Person类里的sore, language属性并无任何联系,也即不是无法赋值,而是你根本没有给它们赋值

可以尝试定义一个有参构造,在创建对象的时候传入main()里定义的sore, language

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

慕粉1406301482 提问者

非常感谢!
2017-03-05 回复 有任何疑惑可以回复我~
public class Person {

  public String sore ;

     public String language ;

    public void Person(){

        System.out.println("每个人都有着自己的语言。");

        System.out.println("就好像"+sore+"说"+language);

    }

    public static void main(String[] args){

        China ch=new China();

      ch.sore = "中国人";

       ch.language = "中文";

         ch.Person();

    }

}
//这样就可以了

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

慕粉1406301482 提问者

非常感谢
2017-07-09 回复 有任何疑惑可以回复我~

一个是成员变量,一个是局部变量   不一样的

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

慕粉1406301482 提问者

谢谢啦
2017-07-09 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第二季 升级版
  • 参与学习       530629    人
  • 解答问题       6091    个

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

进入课程

小新人求教

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信