我有一個代碼片段,如下所示。我如何重構它來使用代表?值得使用委託來反駁這段代碼嗎?我錯在認爲這是一個可以使用代表的場景嗎?我正在嘗試學習代表並希望看到它們的使用。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