Writing /volume1/Web/Public/dokuwiki/data/log/deprecated/2024-11-15.log failed

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
study:java:design_pattern:state [2008/09/20 06:43] bananastudy:java:design_pattern:state [2010/10/16 02:09] (現在) banana
行 39: 行 39:
  
 스테이트 패턴은 컨텍스트 객체에 수많은 조건문을 집어넣는 대신에 사용할 수 있는 패턴이라고 생각하면 됩니다. 스테이트 패턴은 컨텍스트 객체에 수많은 조건문을 집어넣는 대신에 사용할 수 있는 패턴이라고 생각하면 됩니다.
-행동을 상태 객체 내에 캡슐화시키면 컨텍스트 내의 상태 객체를 바꾸는 것만으로도 컨텍스트 객에츼 행동을+행동을 상태 객체 내에 캡슐화시키면 컨텍스트 내의 상태 객체를 바꾸는 것만으로도 컨텍스트 객체의 행동을
 바꿀 수 있으니까요. 바꿀 수 있으니까요.
  
行 155: 行 155:
 } }
 </code> </code>
 +
  
  
行 162: 行 163:
 <code java> <code java>
 public class HasQuarterState implements State { public class HasQuarterState implements State {
 +     Random randomWinner = new Random(System.currentTimeMillis());
      GumballMachine gumballMachine;      GumballMachine gumballMachine;
  
行 179: 行 181:
      public void turnCrank() {      public void turnCrank() {
         System.out.println("손잡이를 돌리셨습니다.");         System.out.println("손잡이를 돌리셨습니다.");
-        gumballMachine.setState(gumballMachine.getSoldState());+        int winner = randomWinner.nextInt(10); 
 +        if((winner==0) && (gumballMachine.getCount() > 1)) { 
 +           gumballMachine.setState(gumballMachine.getWinnerState()); 
 +        } else { 
 +           gumballMachine.setState(gumballMachine.getSoldState()); 
 +        }
      }      }
  

QR Code
QR Code study:java:design_pattern:state (generated for current page)