package shujvdaochu;
public interface Export {
public boolean export(String data);
}
package shujvdaochu;
public class ExportDb implements Export {
@Override
public boolean export(String data) {
System.out.println("导出数据"+data+"到数据库");
return true;
}
}
package shujvdaochu;
public class ExportTxt implements Export {
@Override
public boolean export(String data) {
System.out.println("到处数据"+data+"到文件");
return false;
}
}
package shujvdaochu;
public abstract class ExportFactory {
public boolean export(String data)
{
Export api=factoryMethod();
return api.export(data);
}
protected abstract Export factoryMethod();
}
package shujvdaochu;
public class DbFactory extends ExportFactory {
@Override
protected Export factoryMethod() {
return new ExportDb();
}
}
package shujvdaochu;
public class Txtfactory extends ExportFactory {
@Override
protected Export factoryMethod() {
return new ExportTxt();
}
}
package shujvdaochu;
public class Test {
public static void main(String args[])
{ExportFactory ef=new DbFactory();
ef.export("蓝精灵");
}
}