using System; class Program { public static void Main() { try { using (D d = new D()) { Console.WriteLine("using D"); } } catch (Exception ) { Console.WriteLine("catch"); } Console.ReadKey(); } } class D : IDisposable { IDisposable a = null; IDisposable b = null; public void Dispose() { try { a.Dispose(); } finally { try { b.Dispose(); } finally { } } } }