黑马程序员技术交流社区

标题: 求解答一下问题 [打印本页]

作者: FutureQing    时间: 2016-4-7 20:08
标题: 求解答一下问题
Demo {
public static void main(String[] args) {
Person p1 = new Person();   
p1.name = “麦克”;        
p1.country = "美国";        
Person p2 = new Person();
p2.name = "红杉";        
p2.country = "韩国";   
p1.speak();
p2.speak();
}
}
class Person {
String name;                    
static String country  =  中国;                    
public void speak() {            
System.out.println(name + "..." + country);
}
}
这题结果国家为啥都是韩国?


作者: shaojianfei520    时间: 2016-4-7 20:14
共勉 yiqi grog
作者: 小灰辉    时间: 2016-4-7 20:17
这是因为啊,static是静态的.是对象共享数据,存在常量池中.
作者: FutureQing    时间: 2016-4-7 20:19
小灰辉 发表于 2016-4-7 20:17
这是因为啊,static是静态的.是对象共享数据,存在常量池中.

那为啥不是中国?确是韩国?
作者: 小灰辉    时间: 2016-4-7 20:24
static 修饰的是对象的共享数据 ,可以是被 覆盖的.它不象final修饰的变量, 一旦初始化就不可改变就是一个常量.

static是可以 覆盖的.主函数那不是 覆盖了么




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2