日期:2014-05-20  浏览次数:20809 次

有没有一个简单的例子可以说明非得用static变量和方法的情况?
本人使用java开发的经验不多,因此没有碰到过用static变量或方法的情况,那位老兄(老姐亦可)可以给个好例子?谢谢!

------解决方案--------------------
当你要用到是类的特性,可以设置成为static,或成统计一些东东时!
------解决方案--------------------
比如车站一共有100张票
有10个窗口卖票
票是大家共享的,那个窗口抢到就是谁的!

此时,可用车票数量在每个售票窗口里,就是静态的。

票的数量不依赖窗口,即使有20个窗口,票依然只有100张!
------解决方案--------------------
Java code
class TicketWindow {
  static int ticketAvilable = 100;
  public int sell(){
    if(ticketAvilable >0){
      return ticketAvilable--;
    }
  }
}

------解决方案--------------------
比如还有需要在其他对象初始化之前就有要获知或信息处理的场合
------解决方案--------------------
单例模式获得对象时用静态方法,因为单例的类的构造是 private 的。
------解决方案--------------------
适用于在一个类调用另一个类的属性,如下2个类示例 
public class Flow{
private static String name="你是哪里人"
public static String getName() {
return name;
}

public void setName(String name) {
Flow.mode = mode;
}
}

public class Fute{
 //如想取得Flow类的name属性的值,就必须把name声明成static哦,不然不能调用Flow类的name
System.println(Flow.getName());
}
明白了吧
------解决方案--------------------
除了main函数,其它所有static都可以不用,不过有时用static可以简单很多。
如 程序的一些主参数 可以保存在static变量中, 也可以保存在非static变量中,但需要将该类作为参数传递给所有需要访问这些变量的类中