Java 디자인 모드의 원형 모드(Prototype 모드) 소개
1714 단어 Java디자인 모델원형 모드Prototype 모드
Prototype 모드는 하나의 대상이 다른 맞춤형 대상을 만들 수 있도록 합니다. 어떻게 만드는지 전혀 알 필요가 없습니다. 작업 원리는 하나의 원형 대상을 창설할 대상에게 전달함으로써 창설할 대상은 원형 대상의 복사를 요청함으로써 창설을 실시합니다.
원형 모드를 어떻게 사용합니까
자바에서 clone () 방법을 제공하여 대상의 복제를 실현하기 때문에 Prototype 모드의 실현은 단번에 간단해진다.숟가락을 예로 들면:
public abstract class AbstractSpoon implements Cloneable{
String spoonName;
public void setSpoonName(String spoonName) {this.spoonName = spoonName;}
public String getSpoonName() {return this.spoonName;}
public Object clone(){
Object object = null;
try {
object = super.clone();
} catch (CloneNotSupportedException exception) {
System.err.println("AbstractSpoon is not Cloneable");
}
return object;
}
}
두 가지 구체적인 구현(ConcretePrototype):
public class SoupSpoon extends AbstractSpoon{
public SoupSpoon(){
setSpoonName("Soup Spoon");
}
}
public class SaladSpoon extends AbstractSpoon{
public SaladSpoon(){
setSpoonName("Salad Spoon");
}
}
Prototype 모드 호출은 간단합니다.
AbstractSpoon spoon = new SoupSpoon();
AbstractSpoon spoon = new SaladSpoon();
물론 공장 모델과 결합하여 AbstractSpoon 실례를 만들 수도 있다.Java에서 Prototype 모드는clone() 방법의 사용으로 바뀌었다. Java의 순결한 대상을 향한 특성 때문에 Java에서 디자인 모드를 사용하는 것은 매우 자연스러워졌다. 둘은 거의 혼연일체가 되었다.이것은 많은 패턴에 반영된다. 예를 들어 Interator 역행 패턴이다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JPA + QueryDSL 계층형 댓글, 대댓글 구현(2)이번엔 전편에 이어서 계층형 댓글, 대댓글을 다시 리팩토링해볼 예정이다. 이전 게시글에서는 계층형 댓글, 대댓글을 구현은 되었지만 N+1 문제가 있었다. 이번에는 그 N+1 문제를 해결해 볼 것이다. 위의 로직은 이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.