之前看到过类似的问题:如果面试时主考官要求你用一句话来描述多态,尽可能的精炼,你会怎么回答?当然答案有很多,每个人的理解和表达不尽相同,但我比较趋向这样描述:通过继承实现的不同对象调用相同的方法,表现出不同的行为,称之为多态。你看我这样理解对吗??大家能不能给一个正确的 答案啊?

解决方案 »

  1.   

    这个那有固定答案的?固定答案只有所有人只看一本教科书,或者官方出版物起码OO这块,并不是一个人提出来的,也不是微软自己搞的东西,所以没有啥固定答案
      

  2.   

    一个概念,多种表现,这就是多态。C#中体现多态概念的主要有方法的重载:一个函数名体现一个功能,一个概念。多个函数签名和实现体现这个函数的多种表现形式。
    接口实现和方法的复写,派生类的方法是抽象类或者接口的概念的延伸。并且有不同的实现,表现了具体类的表现的差异。
    除此之外,泛型也体现了多态。一个泛型类具有一致的概念,比如列表、字典、树等等,同时又有不同的类型,这是它表现形式的不同。
      

  3.   


    通过继承实现的不同对象调用相同的方法,表现出不同的行为,称之为多态你看我这样描述多态行吗???
      

  4.   

    不行,因为以偏概全了。我已经说了,C#中很多语法特征都体现了多态,并非只有继承。
      

  5.   


    你这个是狭义的多态,也没错,广义的多态可以是方法的重载,接口,泛型,委托等等
      

  6.   

    一个类型因为实例化它的派生类重写了其函数而导致运行时产生不同的结果
      

  7.   


    那意思:我这句话中只是在继承中体现了多态的含义,并非是多态的真正含义!
      

  8.   

    这就好比什么是“风”。风是客观存在的,空气的流动。但是空气本身不是“风”。你哲学没有学好。