我有一个代码片段,如下所示。我如何重构它来使用代表?值得使用委托来反驳这段代码吗?我错在认为这是一个可以使用代表的场景吗?我正在尝试学习代表并希望看到它们的使用。c#委托重构学习
public class Program
{
public static void Main(string[] args)
{
var count = Int32.Parse(Console.ReadLine());
Console.Write("Logger Type -->");
var logType = Console.ReadLine();
if (logType == "A")
{
if (count > 10)
{
LoggerTypeA.Error(count);
}
else
{
LoggerTypeA.Warning(count);
}
}
else
{
if (count > 10)
{
LoggerTypeB.Error(count);
}
else
{
LoggerTypeB.Warning(count);
}
}
Console.ReadLine();
}
}
internal static class LoggerTypeA
{
public static void Error(int count)
{
Console.WriteLine("Error {0} from Logger A", count);
}
public static void Warning(int counter)
{
Console.WriteLine("Warning {0} from Logger A", counter);
}
}
internal static class LoggerTypeB
{
public static void Error(int count)
{
Console.WriteLine("Error {0} from Logger B", count);
}
public static void Warning(int counter)
{
Console.WriteLine("Warning {0} from Logger ", counter);
}
}
接口可能比代表更好。 –
这里没有明显的代表需要。关于代表的文章将会有例子。 –
你能否给我提供一个可以使用委托的简单例子? – Angad