public static  void cc(Object xx)
        {
            aa a= xx as aa;
            if(a!=null)
{
console.writeline(a.name);
}bb b= xx as bb;
            if(b!=null)
{
console.writeline(b.name);
}
        }  
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) 最新版本:20070127http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html

解决方案 »

  1.   

    使用接口或抽象类.
    aa和bb是他的派生类.
      

  2.   

    //参考:
            static void Main(string[] args)
            {
                aa a = new aa();
                a.name = "aaa";            bb b = new bb();
                b.name = "bbb";            cc(a);
                cc(b);
                Console.Read();
            }
            public static void cc(Object a)
            {
                if (a is aa) //ConsoleApplication1.aa //参数名别和类重名
                    Console.WriteLine(((aa)a).name);
                if (a is bb) //ConsoleApplication1.aa //参数名别和类重名
                    Console.WriteLine(((bb)a).name);
            }
      

  3.   

    class person
    {
      protected string name;
      public string name
      {
        set {name=value;}
      }
      public virtual void say()
      {
        Console.WriteLine("My name is "+name);
      }
    }class aa :person
    {
      public override void say()
      {
         Console.WriteLine("My name is "+name);
      }
    }class bb :person
    {
      public override void say()
      {
         Console.WriteLine("My name is "+name);
      }
    } static void Main(string[] args)
            {
                aa a = new aa();
                a.name = "aaa";            bb b = new bb();
                b.name = "bbb";            cc(a或b2个类);//传a输出aaa传b输出bbb
                Console.Read();
            }
           public void cc(person obj)
           {
             obj.say();
           }
      

  4.   

    我的意思是只继承Object  不继承接口或抽象类。如果是用if()判断 那有100个类,那判断100次呀??也不是用重写ToString()的方法实现。
    这个问题是我看nHibernate发现的。
    例如ISession类的一个save方法
    public Object Save(Object obj)
    他就可以任意传对象。。不知道怎么实现的就可以获得传的对象的实力,然后插入到数据库。
    比如传一个自己写的User类。我想 到方法里面一定会把obj转成User类 然后获得User的属性插入到数据库里。。