请教一个关于类型转换问题
看如下的一段代码: 
 public   class   Program 
             { 
                         public   static   void   Main(string[]   args) 
                         {                         
                                     ClassTest   a   =   new   ClassTest(); 
                                     BaseClass   b   =   a;                                              
                                     Console.WriteLine(b.GetType().ToString());       
                                     Console.ReadLine(); 
                         } 
             } 
             public   class   BaseClass{   } 
             public   class   ClassTest   :   BaseClass   {   }   
 如何使b.GetType()得到的类型是BaseClass而不是ClassTest
------解决方案--------------------public class ClassTest : BaseClass { } 由于他们好比父子关系,b变量会自动转换
------解决方案--------------------b 指向的是一个new ClassTest()啊,这个是不能更改的   
 CLR最重要的一个特性就是类型安全。CLR在运行时可以通过调用GetType方法来得到对象的准确类型。因为该方法是一个非虚方法,所以我们不可能利用它来修改一个类型的信息。