System.IO.File 没有构造函数。而是使用创建/打开静态方法。
为什么 File 不是用构造函数创建或打开的?
调用构造函数是否意味着调用构造函数的代码“拥有”对象,而对于诸如文件之类的文件,对象只是将句柄包装到文件系统拥有的文件中,情况并非如此?这是某种 OOP 约定、.NET/C# 约定,还是纯粹是随意的?
最佳答案
File 类是 .NET Framework 1.0 版的后期添加。在 Microsoft 进行可用性研究后添加。他们邀请了以前从未使用过 .NET 的程序员,并要求他们编写使用 FileStream 和 StreamWriter 类的代码。那些有构造函数的。成功率为零。
所以他们想出了 File,它有一堆创建/打开文件的静态辅助方法。将它们视为工厂方法。不,您不创建文件。你用吧。查看您最喜欢的关于静态类的 C# 编程语言书籍。
关于c# - 为什么 .NET System.IO.File 使用 Create/Open 而不是构造函数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25941360/