정의 : 상태 패턴에서 클래스의 동작은 상태에 따라 변경됩니다.
특징:
1. 캡슐화 된 변환 규칙.
2. 가능한 상태를 열거하십시오. 상태를 열거하기 전에 상태 유형을 결정해야합니다.
3. 특정 상태와 관련된 모든 행동을 클래스에 넣으면 새로운 상태를 쉽게 추가 할 수 있습니다. 객체의 동작을 변경하기 위해 객체 상태 만 변경하면됩니다.
4. 대규모 조건부 명세서 블록이 아닌 상태 전환 논리를 상태 개체와 통합하도록합니다.
5. 여러 환경 객체가 상태 객체를 공유하여 시스템의 객체 수를 줄일 수 있습니다.
기업 및 개발 및 공통 프레임 워크의 응용 프로그램 :
예:
공개 클래스 데모 {public static void main (String [] args) {context context = new Context (); 상태 이동 = 새로운 이동 (); move.show (컨텍스트); 상태 정지 = 새로운 정지 (); stop.show (컨텍스트); }} 클래스 컨텍스트 {개인 상태 상태; public void setstate (State State) {System.out.println ( "개체 상태 축복"); this.state = state; }} interface state {void show (context context);} class move state {public void show (컨텍스트 컨텍스트) {context.setstate (this); System.out.println ( "개체가 움직입니다"); }} 클래스 정지 상태 상태 {public void show (Context Context) {context.setstate (this); System.out.println ( "개체가 움직입니다"); }}상태 모드는 무언가를 완성 할 때와 같은 많은 객체 상태가있는 상황에서 사용됩니다. 미완성, 완료, 진행 및 선반과 같은 상태가 있습니다. 현재 상태 모드 사용을 고려할 수 있습니다.
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.