C# 为什么存在Console.Out.WriteLine?
实际上,问题应该是为什么C# 为什么存在Console.Out.WriteLine?,c#,.net,windows,console-application,reflector,C#,.net,Windows,Console Application,Reflector,实际上,问题应该是为什么Console.WriteLine只是作为Console.Out.WriteLine 我使用intellisense找到了这个小方法,然后打开并“反编译”了控制台的代码。WriteLine方法发现: public static void WriteLine(string value) { Out.WriteLine(value); } 那么为什么WriteLine是这样实现的呢?这完全是一种快捷方式还是有其他原因?控制台。WriteLine是一种静态方法Cons
Console.WriteLine
只是作为Console.Out.WriteLine
我使用intellisense找到了这个小方法,然后打开并“反编译”了控制台的代码。WriteLine
方法发现:
public static void WriteLine(string value)
{
Out.WriteLine(value);
}
那么为什么
WriteLine
是这样实现的呢?这完全是一种快捷方式还是有其他原因?控制台。WriteLine
是一种静态方法Console.Out
是一个静态对象,可以作为参数传递给任何采用TextWriter
的方法,该方法可以调用非静态成员方法WriteLine
一个有用的例子是某种可定制的日志例程,您可能希望将输出发送到
stdout
(Console.Out
)、stderr
(Console.Error
)或无处(System.IO.TextWriter.Null
),或者基于某些运行时条件的任何其他内容。Brad Abrams(微软CLR和.NET framework的创始成员)说:
Console.WriteLine()只是Console.Out.WriteLine的快捷方式。
控制台被WriteLine属性重载,使其更易于编写
资料来源:Anders Hejlsberg的《C#编程语言》一书