Can two catch blocks be executed?
Answers were Sorted based on User's Feedback
Answer / ravinder singh chauhan
We can use as many catch block with try block but executed
only one at a time...............
| Is This Answer Correct ? | 31 Yes | 3 No |
Answer / sunny
no,,two catch blocks cnt b executed ..only one will be at
one time,,,,
| Is This Answer Correct ? | 16 Yes | 2 No |
yes two catch block can be executed .
Sorry for privious Error!whrer two catch block are not
executd but this time it has been executed
Now This is right answer here two
using System;
class a
{
public static void Main()
{
int a=8;
int b=0;
int [] arr=new int[]{1,2};
try
{
Console.WriteLine(a/b);
}
catch(Exception e)
{
Console.WriteLine(e.ToString());
Console.WriteLine("Hello");
}
finally
{ try
{
Console.WriteLine(arr[2]);
}
catch(IndexOutOfRangeException d)
{
Console.WriteLine(d.ToString
()+ "hello");
Console.WriteLine("Hello");
}
}
}
}
output will be
----------------
System.DivideByZeroException: Attempted to divide by zero.
at a.Main()
Hello
System.IndexOutOfRangeException: Index was outside the
bounds of the array.
at a.Main()hello
Hello
| Is This Answer Correct ? | 12 Yes | 3 No |
Answer / awadhesh
For a given set of try catch only one exception block will
get executed. Notice in finally what you are having is a
new set of try catch statements. They are unrelated to the
one above , so it is wrong to say here that two catch
blocks were executed.
| Is This Answer Correct ? | 8 Yes | 1 No |
Answer / pompana gouda
Close this question.
Correct answer is:
If a finally block contains a try catch block where in
exceptions can occur. In that case exception in the main
try catch block and the exceptions in finally block will
also be thrown.
In the above case not only two catch blocks we can execute
many(N) number of catch blocks.
| Is This Answer Correct ? | 8 Yes | 4 No |
Answer / khushnood alam
two catch block can be executed but need coresponding try
block
ex
DbTransaction Transaction = Connection.BeginTransaction();
try
{
RemoteDB.ExecuteNonQuery(cmdBfcNew,
Transaction);
if (Convert.ToInt64
(AddBfcNewOutgoingDetails["ID"]) == -1)
{
mID = Convert.ToInt64
(RemoteDB.GetParameterValue(cmdBfcNew, "@ReturnID"));
}
else
{
mID = Convert.ToInt64
(AddBfcNewOutgoingDetails["ID"]);
}
try
{
DbCommand cmdOutgoing =
LocalDB.GetStoredProcCommand
("usp_Outgoing2UpdateAfterUploadingData");
LocalDB.AddInParameter
(cmdOutgoing, "@AwbNo", DbType.String,
AddBfcNewOutgoingDetails["AwbNo"]);
}
catch (Exception Ex)
{
Transaction.Rollback();
Transaction1.Rollback();
return Ex.Message;
}
catch (Exception Ex)
{
Transaction.Rollback
();
return Ex.Message;
}
| Is This Answer Correct ? | 2 Yes | 0 No |
Answer / kanan
No. Two Catch Blocks for same try can not be executed.
| Is This Answer Correct ? | 2 Yes | 1 No |
Answer / gyana
NO,we cannot use two catch block.It can't be executed.
| Is This Answer Correct ? | 3 Yes | 3 No |
Answer / anil chauhan
No.... Its not posible to execute more then one catch block
at one time.
| Is This Answer Correct ? | 2 Yes | 2 No |
Distinguish between finally and finalize blocks?
Explain ACID rule of thumb for transactions.
What is yield in c#?
What is Covariance and contravariance in C#?
Can constructor be private c#?
Is array immutable in c#?
How do I unload an assembly?
What does do in c#?
Error handling and how this is done ?
What is the difference between dispose() and finalize() methods in c#?
How do I enforce const correctness in c#?
Explain ACID rule of thumb for transactions.
Visual Basic (800)
C Sharp (3816)
ASP.NET (3180)
VB.NET (461)
COM+ (79)
ADO.NET (717)
IIS (369)
MTS (11)
Crystal Reports (81)
BizTalk (89)
Dot Net (2435)
Exchange Server (362)
SharePoint (720)
WCF (340)
MS Office Microsoft (6963)
LINQ Language-Integrated Query (317)
WPF (371)
TypeScript (144)
Microsoft Related AllOther (311)