건설자 모델 - 통속해설
2067 단어 java 디자인 모드
알아볼까?정의를 쓰는 사람들이 왜 통속적으로 쓰지 않는지 모르겠다.통속적으로 말하면 복잡한 대상의 창설과 부품의 창설을 분리한다. 예를 들어 배를 만드는 것, 배를 구축하는 대상과 배를 구축하는 부품이 분리된 것이다. 아직 잘 모르니 들을 필요가 없다.예를 들어 고객으로서 배를 만들 때 모든 부품의 건조 과정은 고객으로서 볼 수 없다. 고객이 본 소개는 배는 선체, 갑판, 돛대(배는 아직 만들지 않았다)이다.그래서 고객이 볼 수 없는 것은 부품의 구축 과정이고 고객이 볼 수 있는 것은 대상의 구축 과정이다.
그게 무슨 소용이야?
아니면 위의 그 예에서 고객은 배의 구성을 생각했다. 그리고 배는 몇 가지를 만들 수 있다. 즉, 다른 표현이 있다. 어느 날 고객은 이 배가 마음에 들지 않는 것을 보고 내가 나무를 쓰고 싶다고 말했다. 너희들은 어떻게 철을 사용하느냐에 따라 사장은 설계 도면에 따라 다시 한 번 만들었다.이 과정의 가치가 바로 구현되었다.네, 더 이상 배를 설계할 필요가 없어요.
package designPatterns;
class Ship{
private String body;
private String board;
private String mast;
public String getBody() {
return body;
}
public void setBody(String body) {
this.body = body;
}
public String getBoard() {
return board;
}
public void setBoard(String board) {
this.board = board;
}
public String getMast() {
return mast;
}
public void setMast(String mast) {
this.mast = mast;
}
}
interface ShipBuilder{//
public void buildBody();
public void buildBorad();
public void buildMast();
public Ship buildShip();
}
class IronShipBuilder implements ShipBuilder{
Ship ship=new Ship();
public void buildBody() {
// TODO Auto-generated method stub
ship.setBody(" ");
System.out.println(" !");
}
public void buildBorad() {
ship.setBoard(" ");
System.out.println(" ");
}
public void buildMast() {
// TODO Auto-generated method stub
ship.setMast(" ");
System.out.println(" ");
}
public Ship buildShip() {
// TODO Auto-generated method stub
System.out.println(" ");
return ship;// 。
}
}
class ShipDirector{//
public static Ship bulidShip(ShipBuilder sb){
sb.buildBody();
sb.buildBorad();
sb.buildMast();
return sb.buildShip();
}
}
public class MyBuilder {
public static void main(String[] args) {
// ,
//
Ship ship = ShipDirector.bulidShip(new IronShipBuilder());
// ,
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Java 설계 모드 중 하나(단순 플랜트 모드)1. 간단한 공장 모델은 무엇입니까? 단순 공장 모델은 유형의 창설형 모델에 속하고 정적 공장 방법 모델이라고도 부른다.하나의 클래스를 전문적으로 정의함으로써 다른 클래스의 실례를 만드는 것을 책임진다. 생성된 실례...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.