Transformer 및 TransformerB의 기본 구현을 포함하는 타사 라이브러리가 있다고 가정합니다. 제 3 자 라이브러리와 관련된 변압기의 설계 패턴
public TransformerNew[] process(Transformer[] transformers) {
}
을 내가 instanceof를 또는 명시 적 형식없이이를 수있는 방법 :
가 나는 기능을 다음과 작성해야 TransformerNew
public class TransformerAConverter {
public TransformerNew convert(TransformerA transformerA) {
// conversion logic
}
}
public class TransformerBConverter {
public TransformerNew convert(TransformerB transformerB) {
// conversion logic
}
}
말 TransformerA 및 TransformerB 클래스를 출력하기위한 병렬 클래스를 작성해야 주조. 방문자 패턴을 사용해 보았지만 표현할 수는 없었습니다.
'instanceof'의 문제점은 무엇입니까? – dur
_conversion logic_은 정확히 무엇을 의미합니까? [This] (https://stackoverflow.com/questions/350404/how-do-the-proxy-decorator-adapter-and-bridge-patterns-differ/350471#350471) 도움이 될 수 있습니다. –
@dur : 10-15 개의 변압기가있을 수 있으므로 많은 instanceof를 사용하고 싶지 않습니다. –