class Test_Static{ // 一个static 的例子
public static void main(String[] args) {
System.out.println("Hello World!");
Person p = new Person("北野武","日本");
p.print1();
Person p2 = new Person();// 新建一个对象
p2.setName("宫崎骏");// 没有赋值 country
p2.print1();// 这个地方输出 日本 (P2这个对象的country没有赋值但是因为country是静态的被共享的,P1的时候已经被赋值了)
System.out.println(Person.country);// 这个就是类名.直接调用; 输出 日本
System.out.println(p2.country);// 这个就是对象名调用
}
}
class Person {
String name ;
static String country;// 静态变量,能够被类所有的对象使用; 上面P2就可以直接使用country(日本)
public Person () {
}
public Person(String name, String country) {
this.name = name;
this.country = country;
}
public void setName(String name) {
this.name = name;
}
public void print1() {
System.out.println(name);
System.out.println(country);
}
public static void print2() {
//System.out.println(name);
System.out.println(country);
}
} |