【发布时间】:2013-06-07 00:17:02
【问题描述】:
以.NET SHA256Managed 类为例。
SHA256Managed 继承自抽象类SHA256,它有一个名为 Create() 的方法。文档说 Create() 实例化了 SHA256 的默认实现的一个实例。
我可能会写类似的东西
using (SHA256Managed Sha256Managed = new SHA256Managed())
{
// code
}
而微软的示例选择使用:
SHA256 mySHA256 = SHA256Managed.Create();
Create() 之类的方法(来自基类)如何实例化派生自它的类的实例?
【问题讨论】:
-
我猜它会以正常方式实例化它。也许在其他语言中有所不同,但在 C# 中,类之间的“循环”引用不是问题。
-
您在 Microsoft 的示例代码中看到的是对接口编程的示例。见stackoverflow.com/questions/383947/…