public class ChocolateBoiler{
 private boolean empty;
 private boolean boiled;
 public ChocolateBoiler(){
  empty = true;
  boiled = false;
 }
 public void fill(){
  if (isEmpty()){
   empty = false;
   boiled = faslse;
  }
 }
 public void drain(){
  if(! isEmpty() && isBoiled()){
   empty = true;
  }
 }
 public void boil(){
  if (!isEmpty() && !isBolied()){
    boiled = true;
  }
 }
 // set省略
}后面说“万一同时有多于一个的ChocolateBoiler实例存在,可能发生哪些很糟糕的事呢?
可能发生什么事啊?谢谢高手讲解! 

解决方案 »

  1.   

    提问时,有java代码用代码格式咯
    public void fill(){ 
      if (isEmpty()){ 
      empty = false; 
      boiled = faslse; 
      } 

      

  2.   

    不会很糟糕private static boolean empty; 
    private static boolean boiled; 以上写会很糟糕
      

  3.   

    多个实例,暂时似乎没有什么糟糕的情况产生,因为你这里都是设置自己的这个实例的TRUE或者是FALSE值,对其他的相同类型的实例影响似乎没有,因为这里就是一个普通的设置类,相当于开关吧,是吧.但是最糟糕的是没有实际的意义,你这个类都是内部的设置开关值,而没有被其他的引用,建议设置main函数来试试,你就知道了,同时你实例化几个这个类,打印出来看看就十分清楚了.
      

  4.   

    写一个测试用例,自己debug跟踪一下就知道有没有问题了!
      

  5.   

    我在javaeye问到答案了。谢谢各位捧场。结贴。