CSharp Programming

CSharp Programming

Exception Handling has 18 Questions
Which of the following is NOT a .NET Exception class?

Exception
StackMemoryException
DivideByZeroException
OutOfMemoryException
Which of the following statements is correct about an Exception?

It occurs during compilation.
It occurs during linking.
It occurs at run-time.
It occurs during Just-In-Time compilation.
In C#.NET if we do not catch the exception thrown at runtime then which of the following will catch it?

Compiler
CLR
Linker
Loader
Which of the following statements is correct about the C#.NET program given below?
using System;
namespace ASTIWZConsoleApplication
{
    class MyProgram
    {
        static void Main(string[] args)
        {
            int index = 6;
            int val = 44;
            int[] a = new int[5];
            try
            {
                a[index] = val ;
            }    
            catch(IndexOutOfRangeException e)
            {
                Console.Write("Index out of bounds ");
            }
            Console.Write("Remaining program");
        }
    }
}

Value 44 will get assigned to a[6].
It will output: Index out of bounds
It will output: Remaining program
It will output: Index out of bounds Remaining program
Which of the following statements are correct about exception handling in C#.NET?
  1. If an exception occurs then the program terminates abruptly without getting any chance to recover from the exception.
  2. No matter whether an exception occurs or not, the statements in the finally clause (if present) will get executed.
  3. A program can contain multiple finally clauses.
  4. A finally clause is written outside the try block.
  5. finally clause is used to perform clean up operations like closing the network/database connections.

1 only
2 only
2 and 5 only
3 and 4 only
Which of the following statements are correct about exception handling in C#.NET?
  1. If our program does not catch an exception then the .NET CLR catches it.
  2. It is possible to create user-defined exceptions.
  3. All types of exceptions can be caught using the Exception class.
  4. CLRExceptions is the base class for all exception classes.
  5. For every try block there must be a corresponding finally block.

1 and 2 only
1, 2 and 3 only
4 and 5 only
All of the above
Which of the following statements are correct about the exception reported below?
Unhandled Exception: System.lndexOutOfRangeException: Index was outside the bounds of the array: at ASTIWZConsoleApplication.MyProgram.SetVal(Int32 index, Int32 val) in D:SampleASTIWZConsoleApplicationMyProgram.cs:line 26 at ASTIWZConsoleApplication.MyProgram.Main(String[] args) in D:SampleASTIWZConsoleApplicationMyProgram.cs:line 20
  1. The CLR failed to handle the exception.
  2. The class MyProgram belongs to the namespace MyProgram.
  3. The function SetVal() was called from Main() in line number 20.
  4. The exception occurred in line number 26 in the function SetVal()
  5. The runtime exception occurred in the project ASTIWZConsoleApplication.

1 only
1 and 2 only
3, 4 and 5 only
All of the above
Which of the following is the Object Oriented way of handling run-time errors?

OnError
HERESULT
Exceptions
Error codes
Which of the following statements is correct about the C#.NET program given below if a value "6" is input to it?
using System;
namespace ASTIWZConsoleApplication
{
    class MyProgram
    {
        static void Main(string[] args)
        {
            int index; 
            int val = 44;
            int[] a = new int[5];
            try
            {
                Console.Write("Enter a number:");
                index = Convert.Tolnt32(Console.ReadLine());
                a[index] = val;
            }
            catch(FormatException e)
            {
                Console.Write("Bad Format");
            }
            catch(IndexOutOfRangeException e)
            {
                Console.Write("Index out of bounds");
            }
            Console.Write("Remaining program");
        }
    }
}

It will output: Index out of bounds Remaining program
It will output: Bad Format Remaining program
It will output: Bad Format
It will output: Remaining program
Which of the following statements are correct about the exception reported below?
Unhandled Exception: System.lndexOutOfRangeException:
Index was outside the bounds of the array.
at ASTIWZConsoleApplication.Program.Main(String[] args) in
D:ConsoleApplicationProgram.cs:line 14
  1. The program did not handle an exception called IndexOutOfRangeException.
  2. The program execution continued after the exception occurred.
  3. The exception occurred in line number 14.
  4. In line number 14, the program attempted to access an array element which was beyond the bounds of the array.
  5. The CLR could not handle the exception.

1 only
1, 2 and 3 only
2 and 5 only
1, 3 and 4 only
Which of the following statements are correct about exception handling in C#.NET?
  1. try blocks cannot be nested.
  2. In one function, there can be only one try block.
  3. An exception must be caught in the same function in which it is thrown.
  4. All values set up in the exception object are available in the catch block.
  5. While throwing a user-defined exception multiple values can be set in the exception, object.

1 only
1 and 2 only
3 only
4 and 5 only
Exceptions can be thrown even from a constructor, whereas error codes cannot be returned from a constructor.

True
False
Which of the following statements is correct about the C#.NET program given below if a value "6" is input to it?
using System;
namespace ASTIWZConsoleApplication
{
    class MyProgram
    {
        static void Main (string[] args)
        {
            int index; 
            int val = 66; 
            int[] a = new int[5]; 
            try
            {
                Consote.Write("Enter a number: "); 
                index = Convert.ToInt32(Console.ReadLine()); 
                a[index] = val;
            }
            catch(Exception e)
            {
                Console.Write("Exception occurred ");
            }
            Console.Write("Remaining program ");
        }
    }
}

It will output: Exception occurred
It will output: Remaining program
It will output: Exception occurred Remaining program
It will output: Remaining program Exception occurred
Which of the following statements is correct about the C#.NET program given below if a value "ABCD" is input to it?
using System;
namespace ASTIWZConsoleApplication
{
    class MyProgram
    {
        static void Main(string[] args)
        {
            int index; 
            int val = 55; 
            int[] a = new int[5]; 
            try
            {
                Console.Write("Enter a number: ");
                index = Convert.ToInt32(Console.ReadLine());
                a[index] = val;
            }
            catch(FormatException e)
            {
                Console.Write("Bad Format ");
            }
            catch(IndexOutOfRangeException e)
            {
                Console.Write("Index out of bounds ");
            }
            Console.Write("Remaining program ");
        }
    }
}

It will output: Bad Format
It will output: Remaining program
It will output: Index out of bounds
It will output: Bad Format Remaining program
All code inside finally block is guaranteed to execute irrespective of whether an exception occurs in the protected block or not.

True
False
Which of the following is NOT an Exception?

StackOverflow
Division By Zero
Insufficient Memory
Incorrect Arithmetic Expression
Which of the following statements is correct about the C#.NET program given below if a value "ABCD" is input to it?
using System;
namespace ASTIWZConsoleApplication
{
    class MyProgram
    {
        static void Main(string[] args)
        {
            int index; 
            int vat = 88;
            int[] a = new int(5];
            try
            {
                Console.Write("Enter a number: ");
                index = Convert.Toint32(Console.ReadLine());
                a[index] = val;
            }
            catch(Exception e)
            {
                Console.Write("Exception occurred");
            }
            Console.Write("Remaining program");
        }
    }
}

It will output: Exception occurred
It will output: Remaining program
It will output: Remaining program Exception occurred
It will output: Exception occurred Remaining program
It is compulsory for all classes whose objects can be thrown with throw statement to be derived from System.Exception class.

True
False