//
public abstract class FileGenerate
{
public virtual void generate();
}
public abstract class FileGenerate
{
public virtual void generate();
}
//
public class TextGenerate : FileGenerate
{
public override void generate()
}
public class XmlGenerate : FileGenerate
{
public override void generate()
}
//
publci class FileContext
{
FileGenerate filegenerate;
pubic FileContext(FileGenerate filegenerate)
{ this.filegenerate = filegenerate;}
}
public static void GenerateText(string name)
{
return new FileContext(new TextGenerate);
}
public static void GenerateXml(string name,DataStatus status)
{
return new FileContext(new XmlGenerate);
}
FileGenerate context = FileContext.GenerateText("");
context.generate();