try
{
Console.WriteLine("A");
throw new InvalidOperationException();
}
finally
{
Console.WriteLine("B");
}Bu kod bloğundan exception dışarı yayılmadan önce (üst seviyede hiçbir şey yakalamadığını varsayarak) ne yazdırılır?
- aÖnce B sonra A
- bÖnce A sonra B✓
- cYalnızca A (catch olmadığı için finally atlanır)
- dYalnızca B (exception fırlatıldığı için A tamponlanır ve kaybolur)
Açıklama:try bloğu önce çalışır, "A"yı yazdırır, sonra fırlatır. Exception çağrı yığınında yukarı yayılmadan önce finally bloğu her zaman çalışır ve "B"yi yazdırır. Ancak bundan sonra exception yayılmaya devam eder.