我在项目上使用HTTP运行时缓存,并且在调用实例上的操作之前已经实现了检查以确保它不为null。
我不确定这是否是必需的,因为您可以看到下面的类的Cache属性是静态的。这是否意味着一旦我尝试使用它就会实例化Cache对象(假设它还没有),因此永远不会抛出空引用异常?
public sealed class HttpRuntime
{
public static Cache Cache { get; }
}
然而,在防御性编程我的应用程序以从空引用中恢复时,不检查是否错误,特别是当我在其他地方遵循该实践时。
由于
答案 0 :(得分:1)
Cache
对象的生命周期与ASP.NET应用程序绑定,并且无论何时应用程序启动或重新启动它都会被实例化,因此无需对其进行null检查