public static void main(String[] args) {
// TODO Auto-generated method stub
StaticDemo st=new StaticDemo();
System.out.println("靜態變量x="+st.getX());
System.out.println("實例變量y="+st.getY());
StaticDemo a= new StaticDemo();
StaticDemo b= new StaticDemo();
a.setX(1); a.setY(2);
b.setX(3); b.setY(4);
System.out.println("靜態變量a.x="+a.getX());
System.out.println("實例變量a.y="+a.getY());
System.out.println("靜態變量b.x="+b.getX());
System.out.println("實例變量b.y="+b.getY());
}
}
class StaticDemo {
static int x;
int y;
public static int getX() { return x; }
public static void setX(int x) { StaticDemo.x = x; }
public int getY() { return y; }
public void setY(int y) { this.y = y; }
}
這才是正確的,需要註意的是:靜態變量可以用類名.方法名 而實例變量時通過對象.方法名