나는 다음과 같이 두 개 이상의 다른 클래스가 있습니다다른 객체에 대한 인터페이스를 빌더 설계 패턴에서 사용하도록 설계하는 방법은 무엇입니까?
//NOTE : these two classes have getter and setter also
class Artist {
String artistName;
String artistWebsite;
String artistDbpedia;
String artistImage;
List<String> astistAlbumsName;
List<String> astistAlbumsUrl;
}
class Venu {
String VenuName;
String VenuWebsite;
String VenuDbpdia;
String VenuImage;
String VenuDescription;
List<String> venuFans;
}
내가 입력으로 XML 파일을 얻을 및 XML (venu/작가)의 유형을 감지하는 프로듀서 클래스를 갖고 싶어 다음을 만들 시작 입력을 기반으로 한 제품 오브젝트.
문제 :
내 인터페이스가 될 수 있도록 집계를 위해 위의 두 클래스 사이의 유사성을 인터페이스를 만들려면 :
interface Model {
public String getImage();
public String getName();
public String getWebsite();
public String getdbpedia();
}
그럼 내가 위에서 내 빌더 클래스에서이 인터페이스를 구현하고 있습니다 두 가지 클래스가 있지만 그 다른 메소드는 어떨까요?
getVenuFans/getArtistAlbumName/etc ....?
제작자로부터 어떻게 호출 할 수 있습니까?
이 내 빌더 :
Class Builder implements Model {
public String getImage(){}
public String getName(){}
public String getWebsite(){}
public String getdbpedia(){}
}
이 내 생산자가 될 수 있습니다
Class Producer {
public Producer()
{
Builder b = null;
//assume Venu and Artist implements Model
b = (Builder) new Venu();
//I don't have access to getVenuFans()!
b = (Builder) new Artist();
//I don't have access to getArtistAlbumsName()/etc...
}
}