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
main()里定义的sore和language与Person类里的sore, language属性并无任何联系,也即不是无法赋值,而是你根本没有给它们赋值
可以尝试定义一个有参构造,在创建对象的时候传入main()里定义的sore, language
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(); } } //这样就可以了
一个是成员变量,一个是局部变量 不一样的