出于实用性考虑,这两个类都是一次性的。
我了解 using 块的作用。但我不确定它可以或需要使用的所有方式。
例如,这是正确的吗?
using (MyClass myClass = new MyClass(params))
{
myClass.name = "Steve";
SecondClass myClassSecond = new SecondClass(params);
myClassSecond.name = "George";
myClassSecond.msg = "Hello Man in the Yellow Hat";
}
上面的两个类都被处理掉了吗?
或者我在 using 语句中需要两者吗?
using (MyClass myClass = new MyClass(params))
{
myClass.name = "Steve";
using (SecondClass myClassSecond = new SecondClass(params))
{
myClassSecond.name = "George";
myClassSecond.msg = "Hello Man in the Yellow Hat";
}
}
以上是否正确,或者是否有更好的方法来使用多个using语句?
- The
using
语句允许程序员指定使用资源的对象何时应该释放它们。
- 提供给 using 语句的对象必须实现
IDisposable
界面。
- 该接口提供了
Dispose
方法,该方法应该释放对象的资源。
以下是显示 using 语句用法的示例:
using System;
//Object of this class will be given to using hence IDisposable
class C : IDisposable
{
public void UseLimitedResource()
{
Console.WriteLine("Using limited resource...");
}
//Dispose() Method
void IDisposable.Dispose()
{
Console.WriteLine("Disposing limited resource.");
}
}
class Program
{
static void Main()
{
using (C c = new C()) //Object of Class defined above
{
c.UseLimitedResource();
//Object automatically disposed before closing.
}
Console.WriteLine("Now outside using statement.");
Console.ReadLine();
}
}
在以下情况下可以退出 using 语句:
- 的结束
using
声明已达成或
- 如果抛出异常并且控制在语句结束之前离开语句块。
哪个是正确的方法?
正如你所说
出于实用性考虑,这两个类都是一次性的
.,那么你的第二种方法是合适的。那是:
using (MyClass myClass = new MyClass(params))
{
myClass.name = "Steve";
using (SecondClass myClassSecond = new SecondClass(params))
{
myClassSecond.name = "George";
myClassSecond.msg = "Hello Man in the Yellow Hat";
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)