Java多态的优点是什么(java,开发技术)

时间:2024-05-03 21:19:07 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

    Java%E5%A4%9A%E6%80%81%E7%9A%84%E4%BC%98%E7%82%B9%E6%98%AF%E4%BB%80%E4%B9%88

之前继承有提到过。父类引用指向子类对象。这时的引用只能调用子类覆盖重写了的方法,不能调用子类特有方法。自动转换

假如我要该引用区调用子类特有的方法(不是覆盖重写)呢? 会报错 (下面的向下转型就是解决这个问题)

下面举个例子

不同语言输出"HelloWorld"

(1)父类为正常类

提供一个函数调用

在不改变函数的形参(父类)下,实参(子类)的改变不会让程序报错。也就是说,我只需要关心的是函数的形参是与Language类相关的类(本身或者子类对象)就行,而无需考虑传入的实参到底是哪个子类对象。

假如父类是接口或者是抽象类呢?也可以

(2)父类为接口

假如父类真的就是为了提供某标准,或者父类无需实现内容等情况,可以考虑吧父类变成接口,接口也支持多态。

当然,抽象类作为父类也可以实现多态哦。

把父类引用指向子类对象的引用在强转为不同子类对象。 转完之后的对象可以调用子类特有方法

(解决上述的调用子类的特有方法会报错)

在举上面的编程语言输出HelloWorld例子,假如我要求inputLanguage方法对于传入的实参中的子类对象进行判断,假如传入的对象是C语言类就输出新增的特有的方法,Java类也是一样

这里就有点像简单工厂模式(实参是啥我new啥)了,这里是实参是啥,我强转之后,我调用对应的方法。

修改inputHelloWorld函数

本文:Java多态的优点是什么的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:Java怎么实现文件上传和下载的功能下一篇:

6 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18