首页 > 试题广场 >

说一下多态

[问答题]
多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量倒底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定。因为在程序运行时才确定具体的类,这样,不用修改源程序代码,就可以让引用变量绑定到各种不同的类实现上,从而导致该引用调用的具体方法随之改变,即不修改程序代码就可以改变程序运行时所绑定的具体代码,让程序可以选择多个运行状态,这就是多态性。 Java实现多态有三个必要条件:继承、重写、向上转型。
发表于 2019-04-30 22:28:22 回复(0)
更多回答
多态分为运行时多态和编译时多态。 运行时多态一般通过方法的重写来实现,重写发生在父子类之间,要求同名同参同返回,需要哪种形态,父类引用就指向子类的哪个对象。 编译时多态是通过方法的重载来实现,重载发生在同一个类中,要求同名不同参对返回类型没有要求。同样的方法名不同的参数可以显示出不同的形态
发表于 2019-03-19 12:20:56 回复(0)
多态即是不同的类对相同的方法做出响应,也可以认为同一个方法根据发送对象的不同而采用不同的行为方式
编辑于 2018-12-27 23:58:47 回复(0)
由同一个对象调用,产生不同的行为,这种行为就叫多态
发表于 2019-03-21 13:37:32 回复(0)
父类引用指向子类对象
发表于 2019-01-18 16:48:51 回复(1)
一类事物的不同表现形式即为多态,java面向对象模拟了这种形式,狗、猫、猪都是动物的多种形态(多态),实现类是父类或父接口的多态
发表于 2019-02-03 12:32:15 回复(0)
多态一般分为两种:重写式多态和重载式多态。 重载式多态,也叫编译时多态。也就是说这种多态再编译时已经确定好了。重载大家都知道,方法名相同而参数列表不同的一组方法就是重载。在调用这种重载的方法时,通过传入不同的参数最后得到不同的结果。重写式多态,也叫运行时多态。这种多态通过动态绑定(dynamic binding)技术来实现,是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法。也就是说,只有程序运行起来,你才知道调用的是哪个子类的方法。 这种多态通过函数的重写以及向上转型来实现,我们上面代码中的例子就是一个完整的重写式多态。我们接下来讲的所有多态都是重写式多态,因为它才是面向对象编程中真正的多态。
发表于 2019-04-25 18:26:06 回复(0)
父类继承子类或者接口,对方法进行重载,运行过程中,父类引用指向子类对象
发表于 2020-03-22 13:58:59 回复(0)
多态分为编译时和运行时。编译时多态指的是对方法的重载,宠儿可以应对不同的输入。运行时多态指的是在运行时不同实例对象可以有不同的方法,将子类的对象传给父类的引用来实现。
发表于 2019-05-06 20:08:00 回复(0)

多态是同一个行为具有多个不同表现形式或形态的能力。多态就是同一个接口,使用不同的实例而执行不同操作。

发表于 2019-05-04 22:09:18 回复(0)
多态是同一个行为的多种不同的表显形式或形态的能力。
发表于 2019-04-30 22:26:09 回复(0)
  1. 面向对象的三大特性:封装、继承、多态。从一定角度来看,封装和继承几乎都是为多态而准备的。这是我们最后一个概念,也是最重要的知识点。
  2. 多态的定义:指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用)
  3. 实现多态的技术称为:动态绑定(dynamic binding),是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法。
  4. 多态的作用:消除类型之间的耦合关系。
  5. 现实中,关于多态的例子不胜枚举。比方说按下 F1 键这个动作,如果当前在 Flash 界面下弹出的就是 AS 3 的帮助文档;如果当前在 Word 下弹出的就是 Word 帮助;在 Windows 下弹出的就是 Windows 帮助和支持。同一个事件发生在不同的对象上会产生不同的结果。
发表于 2019-04-25 23:25:12 回复(0)
指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。多态的作用:消除类型之间的耦合关系。
发表于 2019-04-25 19:36:23 回复(0)
同一个类型变量传递不同的子类实例,执行不同的操作过程
发表于 2019-04-25 19:16:30 回复(0)
多态即是不同的类对相同的方法做出响应,也可以认为同一个方法根据发送对象的不同而采用不同的行为方式
发表于 2019-04-25 18:46:11 回复(0)
多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量倒底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定。因为在程序运行时才确定具体的类,这样,不用修改源程序代码,就可以让引用变量绑定到各种不同的类实现上,从而导致该引用调用的具体方法随之改变,即不修改程序代码就可以改变程序运行时所绑定的具体代码,让程序可以选择多个运行状态,这就是多态性。 Java实现多态有三个必要条件:继承、重写、向上转型。 1. 继承:在多态中必须存在有继承关系的子类和父类。 2. 重写:子类对父类中某些方法进行重新定义,在调用这些方法时就会调用子类的方法。 3. 向上转型:在多态中需要将子类的引用赋给父类对象,只有这样该引用才能够具备技能调用父类的方法和子类的方法。 Java中有两种形式可以实现多态,继承和接口: 1. 基于继承的实现机制主要表现在父类和继承该父类的一个或多个子类对某些方法的重写,多个子类对同一方法的重写可以表现出不同的行为。 2. 基于接口的多态中,指向接口的引用必须是指定这实现了该接口的一个类的实例程序,在运行时,根据对象引用的实际类型来执行对应的方法。
发表于 2019-04-25 18:27:28 回复(0)
Ly~头像 Ly~
多态一般分为两种:重写式多态和重载式多态。 重载式多态,也叫编译时多态。也就是说这种多态再编译时已经确定好了。重载大家都知道,方法名相同而参数列表不同的一组方法就是重载。在调用这种重载的方法时,通过传入不同的参数最后得到不同的结果。重写式多态,也叫运行时多态。这种多态通过动态绑定(dynamic binding)技术来实现,是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法。也就是说,只有程序运行起来,你才知道调用的是哪个子类的方法。 这种多态通过函数的重写以及向上转型来实现,我们上面代码中的例子就是一个完整的重写式多态。我们接下来讲的所有多态都是重写式多态,因为它才是面向对象编程中真正的多态。
发表于 2019-04-25 18:04:53 回复(0)
多态就是同一类型的变量,传递不同的子类实现执行不同的操作过程,即父类引用子类对象。多态是OOP中最核心的一个特征
发表于 2019-04-25 17:28:29 回复(0)
多态是指允许将父对象设置成一个或多个与子对象相同的技术
发表于 2019-04-25 15:46:18 回复(0)
已做
发表于 2019-03-28 20:12:33 回复(0)