디자인 모델 의 추상 적 인 공장 모델 학습 노트

8454 단어 디자인 모드
머리말
추상 적 인 공장 모델 을 배우 기 전에 간단 한 공장 모델 과 공장 방법 모델 을 배 우 는 것 이 좋다.이렇게 하면 추상 적 인 공장 모델 을 배 우 는 데 도움 이 될 것 이다. 추상 적 인 공장 모델 도 공장 방법 모델 을 바탕 으로 하기 때문이다.
해명 하 다.
말하자면 공장 의 공장 이다. 슈퍼 공장 을 핵심 으로 이 슈퍼 공장 을 중심 으로 다른 공장 을 만 들 고 마지막 에 공장 은 자신의 생산 라인 으로 마우스, 키 보드 를 생산 한다.
특징.
여러 개의 추상 적 인 제품 류 가 있 는데 구체 적 인 공장 류 는 여러 개의 구체 적 인 제품 류 인 스 턴 스 를 만 들 수 있다.
이루어지다
1. 추상 공장
슈퍼 공장 이 라 고도 부 르 는 공장 입 니 다.구체 적 인 연상 공장, hp 공장 의 설립 은 모두 이 슈퍼 공장 을 중심 으로 전개 되 었 다.
/**
 *     
 */

public abstract class ComputerFactory {
     

    //    
    public abstract IKeyboard createKeyboard();

    //    
    public abstract IScreen createScreen();
}

2. 제품 인터페이스
다음 제품 을 위 한 인터페이스
public interface IKeyboard {
     
    //  
    void keyboard();
}
public interface IScreen {
     
    //  
    void screen();
}

3. 제품 인터페이스 에 따라 대상 정의
추상 적 인 인 인 터 페 이 스 를 실현 하고 서로 다른 대상 을 정의 한다.물론 키보드 외 에 도 레 사, HHKB, 달 우 가 있다.스크린 은 삼 성 말고 도 징 동방...
public class RazerKeyboard implements IKeyboard {
     
    @Override
    public void keyboard() {
     
        System.out.print("      ");
    }
}
public class SamsungScreen implements IScreen {
     
    @Override
    public void screen() {
     
        System.out.print("    ");
    }
}

4. 구체 적 인 공장 유형 실현
미 제 는 양심 적 으로 생각 하 는 것 외 에 도 철판 곰 발바닥 보 등 다른 공장 이 있다.
/**
 *     
 */
public class LenovoFactory extends ComputerFactory {
     
    @Override
    public IKeyboard createKeyboard() {
     
        return new RazerKeyboard();
    }

    @Override
    public IScreen createScreen() {
     
        return new SamsungScreen();
    }
}

5. 클 라 이언 트 호출
public class UserClient {
     
    public static void main(String []args){
     

        //       
        LenovoFactory foxconnFactory = new LenovoFactory();
        foxconnFactory.createKeyboard().keyboard();//        
        foxconnFactory.createScreen().screen();//        

		...
		//           ,       ,     hp    , hp       
    }
}

좋은 웹페이지 즐겨찾기