Csharp/C Sharp/Development Class/Buildin Exceptions

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

Argument Null Exception

<source lang="csharp"> using System; class ArgumentNullTest {

public static void Main() {
  String[] s = null;
  String sep = " ";
  try {
    String j = String.Join(sep,s);
  }
  catch (ArgumentNullException e) {
     Console.WriteLine("Error: {0}",e);
  }
}

}

      </source>


IndexOutOfRangeException Exception

<source lang="csharp"> using System;

class MainClass {

   public static void Main()
   {
       try
       {
           int [] IntegerArray = new int [5];
  
           IntegerArray[10] = 123;
  
           // wait for user to acknowledge the results
           Console.WriteLine("Hit Enter to terminate...");
           Console.Read();
       }
       catch(IndexOutOfRangeException)
       {
           Console.WriteLine("An invalid element index access was attempted.");
       }
   }

}

      </source>


InvalidCastException Exception

<source lang="csharp"> using System;

class MainClass {

   public static void Main()
   {
       try
       {
           MainClass       MyObject = new MainClass();
           IFormattable    Formattable;
  
           Formattable = (IFormattable)MyObject;
  
           // wait for user to acknowledge the results
           Console.WriteLine("Hit Enter to terminate...");
           Console.Read();
       }
       catch(InvalidCastException)
       {
           Console.WriteLine("MyObject does not implement the IFormattable interface.");
       }
   }

}

      </source>


NullReferenceException Exception

<source lang="csharp"> using System;

class MyClass {

   public int Value;

}

class MainClass {

   public static void Main()
   {
       try
       {
           MyClass MyObject = new MyClass();
           MyObject = null;
  
           MyObject.Value = 123;
  
           // wait for user to acknowledge the results
           Console.WriteLine("Hit Enter to terminate...");
           Console.Read();
       }
       catch(NullReferenceException)
       {
           Console.WriteLine("Cannot reference a null object.");
  
           // wait for user to acknowledge the results
           Console.Read();
       }
   }

}

      </source>


OutOfMemoryException Exception

<source lang="csharp">


using System;

class MainClass {

   public static void Main()
   {
       int [] LargeArray;
  
       try
       {
           LargeArray = new int [2000000000];
       }
       catch(OutOfMemoryException)
       {
           Console.WriteLine("The CLR is out of memory.");
       }
   }

}

      </source>


OverflowException Exception

<source lang="csharp"> using System;

class MainClass {

   public static void Main() {
       try {
           checked {
               int Integer1;
               int Integer2;
               int Sum;
  
               Integer1 = 2000000000;
               Integer2 = 2000000000;
               Sum = Integer1 + Integer2;
           }
       } catch(OverflowException) {
           Console.WriteLine("A mathematical operation caused an overflow.");
       }
   }

}

      </source>


StackOverflowException Exception

<source lang="csharp">


using System;

class MainClass {

   public static void Main()
   {
       try
       {
           Recursive();
       }
       catch(StackOverflowException)
       {
           Console.WriteLine("The CLR is out of stack space.");
       }
   }
  
   public static void Recursive()
   {
       Recursive();
   }

}

      </source>


Throw and Catch an IO exception because the file zxcvb.data doesn"t exist

<source lang="csharp"> using System.IO; public class IoError {

 public static void Main() {
   StreamReader f;
   try{
     f = new StreamReader("DoesNotExist.data");
   }catch(IOException e) {
     System.Console.WriteLine(e);
   }
   f = new StreamReader("DoesNotExist.data");
 }

}

      </source>


Throw Argument Out Of Range Exception

<source lang="csharp"> using System; using System.Collections; class Class1 {

  static void Main(string[] args) {
   try {
     // Display the first 200 chars from the connection string
     Console.WriteLine("asdf".Substring(1, 200));
   }
   catch (Exception objE) {
     Console.WriteLine(objE.ToString());
   }
  }

}

      </source>


Throw Index Out Of Range Exception

<source lang="csharp"> using System; using System.Collections; class Class1 {

  static void Main(string[] args) {
   long[] longException = new long[2];
   try {
     longException[2] = 5;
   }
   catch (Exception objE) {
     Console.WriteLine(objE.ToString());
   }
  }

}

      </source>


Throw Invalid Operation Exception

<source lang="csharp"> using System; using System.Collections; public class InvalidOpExample {

 public static void Main()  {
   int[] array = {0,0};
   IEnumerator enumerator = array.GetEnumerator();
   Console.Write("{0}",enumerator.Current);
 }

}

      </source>


Throw Null reference Exception

<source lang="csharp"> using System; using System.Collections; class Class1 {

  static void Main(string[] args) {
   Exception objException = new Exception();
   try {
     objException = null;
     Console.WriteLine(objException.Message);
   } catch (Exception objE) {
     Console.WriteLine(objE.ToString());
   }
  }

}


      </source>