假設我有一個API接口和類FacebookAPI和FlickrAPI實現此接口,設計模式
public interface API {
Photo getPhoto(int id);
Album getAlbum(int id);
}
package api;
import domainObjects.Album;
import domainObjects.Photo;
public class FacebookAPI implements API{
@Override
public Photo getPhoto(int id) {
// TODO Auto-generated method stub
return null;
}
@Override
public Album getAlbum(int id) {
// TODO Auto-generated method stub
return null;
}
}
import domainObjects.Album;
import domainObjects.Photo;
public class FlickrAPI implements API{
@Override
public Photo getPhoto(int id) {
// TODO Auto-generated method stub
return null;
}
@Override
public Album getAlbum(int id) {
// TODO Auto-generated method stub
return null;
}
}
的問題是,我只知道,在最小的兩個API(Facebook和Flickr)要求PHOTOID。現在假設要獲取照片FacebookAPI除了需要Id外還需要AccessToken,而FlickAPI除了需要PhotoId外還需要APIKey + UserId。
我可以用什麼設計模式來解決這個問題?