重载是否为多态?如果不继承它是否还属于多态?

解决方案 »

  1.   

    xian_hf 
     
    等 级:
     发表于:2007-11-19 20:24:496楼 得分:0 
    不同意 多态:运行期多态→就是我们说的重载 
              编译期多态→即重写 
     多态→就是运行时的动态绑定
      

  2.   

    我不知C++里面怎么样的java里面就是我说的这样
      

  3.   

    xian_hf   
      
    等   级: 
      发表于:2007-11-19   20:24:496楼   得分:0   
    不同意   多态:运行期多态→就是我们说的重载   
                        编译期多态→即重写   
    说的两句都是错的
      

  4.   

    Mailbomb 1、对象的多态 不叫多态就协变式是JDK 5新增的内容
      

  5.   

    在C++里面重载(Overloading)也是多态的一种表现.
    方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的(Overloading)。Overloaded的方法是可以改变返回值的类型。1、对象的多态 ;2、方法的多态;还有3,属性的多态:基类里和子类里有同名属性,那子类的属性也会覆盖基类的属性.多态:运行期多态→就是我们说的重载 ;编译期多态→即重写 
    上面2句是错的,应该是运行期多态→就是我们说的重写 ;编译期多态→即重载
      

  6.   

    呵呵  感谢ls提供的c++里面的多态
      

  7.   

    晕``你们到底谁说的对呢?我感觉xiyuan1999有道理点也```````把分``分半送你和cursor_wang 把``请告诉我如何送?
      

  8.   

    cursor_wang 说的是C++里面的对于C++里面的我不清楚对于java里面的我确信既然你是在J2SE / 基础类版块问的自然是java里面的多态
      

  9.   

    overloading 重载 指的是一个类里面的具有相同name 的method (including constuctors)
    overriding 重写  是指在继承里面子类对父类方法的重写.
    对吗? 
      

  10.   

    同意12楼的说法
    在Java中多态就是动态绑定
    关键点就是父类引用指向子类对象
    这样才能体现出多态真正的意义!!!
      

  11.   

    为什么要分C++和JAVA呢?OOP思想不都一样么?
      

  12.   

    java中多态就是父类引用子类的对象
    c++中多态就是父类的指针指向子类的对象
    其实我个人感觉在oo中这个应该是一个意思的
      

  13.   

    重载不是多态
    重载是:在同一个类,有方法名称相同,参数不同(包括参数个数或参数类型)的多个方法! 这样的方法在被调用的时候,会根据不同的参数选择对应的方法!而多态的存在必须满足三个条件?
    第一 要有继承
    第二 有有重写
    第三 父类引用指向子类对象
    当满足条件时候,当你调用父类的方法时候,实际上new的是那个对象调用的就是那个对象里的方法
      

  14.   

    多态有2种形式:重写(override)和重载(overload)
      

  15.   


      重载和多态是两个层面的东西。多态好比是战略,而重载只是一种具体的战术。  具体来说,多态其实是“面向接口编程”这OOD原则的一种体现。比如变量的类型是接口(interface)(在JAVA中),而不是某个具体实现了该接口的类。这样在调用该变量所引用的对象的某个方法时,实际发生的行为(所谓的态)取决于程序运行时实际赋予该变量的对象。 但是,多态是用通过继承和重载技术来实现的。