话说静态属性可以被对象内的所有成员共享就想下面这样:
public class Person{
static String name;
}
class test{
Person p=new Person
p.name="张三";
Person p1=new Person
System.out.println(p1.name)
}
这样的话就会输出p1的name 也是张三,实现了共享的特性:那么问题来了,这时候它跟成员变量初始化有什么区别,在实际开发中有没有什么硬性要求???????
有。。Static 是属于类的。 如果一个成员变量,被申明为Static的话。那这个类,不管有没有派生实例,都是可以访问的。比如,你的Person的name。我在其它地方可以直接用Person.name访问。
Public class Person{
public final Static String nameType = "人族";
private String name;
}
这样,你可能好理解了。。大家都是"人族"。。但是每一个不同的对象,就有不同的名字!
静态变量可以被所有实例共享,static关键字只能修饰成员变量,不能用来修饰局部变量,否则编译会报错。