Ok...This is really starting to tick me off. I am getting a casting exception when i perform the following code. My book I'm reading says that I can downcast (Base ~~> Derived Class):
Code:using System; using CastingExample; namespace CastingExample { public class ClassA { public virtual void MyClassName() { Console.WriteLine("My Name is Class A"); } } public class ClassB : ClassA { public override void MyClassName() { Console.WriteLine("My Name is Class B"); } public string HelloWorld() { return "Hello World"; } } } public class TestHarness { public static void Main() { CastingExample.ClassA myClassA = new CastingExample.ClassA(); myClassA.MyClassName(); CastingExample.ClassB myClassB = new CastingExample.ClassB(); myClassB.MyClassName(); CastingExample.ClassA myNewA = (ClassA) myClassB; myNewA.MyClassName(); // Casting Exception Here CastingExample.ClassB myB = (ClassB) myClassA; } }




Reply With Quote