Java的多态有两种,一种是方法的重写,一种是通过继承方法的覆盖

方法的重写,是相同的方法名,不同参数列表,实现不同的功能。例如:

Car.java

public class Car { public void run() { System.out.println("本车正在前行,速度未知"); } public void run(intavg) { System.out.println("本车正在前行,以平均速度前进" + avg); } public void run(intmin, intmax) { System.out.println("本车正在前行,速度在" + min + "-" + max + "之间"); }}

一共三个run方法,根据不同的参数列表区分。

通过继承重写,为此编写两个子类

Train.java

public class Train extends Car { @Override public void run() { System.out.println("我是火车"); } @Override public void run(intavg) { System.out.println("我是火车,我在以平均速度走" + avg); } @Override public void run(intmin, intmax) { System.out.println("我是火车,速度在" + min + "-" + max +"之间"); }}

Bike.java

public class Bike extends Car{ @Override public void run() { System.out.println("我是自行车"); } @Override public void run(intavg) { System.out.println("我是自行车,我在以平均速度走" + avg); } @Override public void run(intmin, intmax) { System.out.println("我是自行车,速度在" + min + "-" + max +"之间"); }}

测试类如下:

Main.java

public class Main { public static void main(String[] args) { Car car = new Car(); Car train = new Train(); Car bike = new Bike();  car.run(); car.run(120); car.run(20, 120);  train.run(); bike.run(); }}

运行时执行的操作依赖于具体的类,而不是依赖于声明的类型。

求**评论、点赞、关注+转发**

限于笔者知识有限,如果不足之处请帮忙指正,不喜勿喷!

您的支持是我不懈努力的动力,请读者多支持下!

更多文章,请关注微信公众号 CS_Toper之路,或者头条号 CSToper

java 多态_Java的多态相关推荐

  1. java 多态_Java面向对象 —— 多态

    前两天已经相继介绍了Java面向对象的三大特性之中的封装.继承,所以今天就介绍Java面向对象的三大特性的最后一项,多态~ 首先讲一下什么是多态,以及多态需要注意的细节 什么是多态:一个对象具备多种形 ...

  2. java中多态_java之多态

    1.多态的概述:是面向对象的三大特性之一,封装.继承.多态. ①一个具体的对象有多种形态,老虎既属于猫科动物(因为子父类是相对的,所以猫科动物也可以看做子类),又属于哺乳动物,所以老虎既可以拥有猫科动 ...

  3. java中多态_Java中多态的理解

    一开始对多态也是半知半解的,最近又要用到多态,所以又温习了一下 多态是继承中的一种特别的 for example class FatherClass { function1(){a1} functio ...

  4. java 多态_Java 多态

    Java多态,在之前的向上转型的文章中已经介绍了使用场景和为什么要通过向上转型实现运行时多态,请先看文章:张舰:Java 向上转型和向下转型 这篇文章主要是总结一下Java多态的概念,具体的例子请参考 ...

  5. [转载] c++多态与java多态性_Java中的多态性

    参考链接: Java中的加法和串联 c++多态与java多态性 Polymorphism is one of the core concepts of OOPS paradigm. The meani ...

  6. java面向对象的多态_java面向对象(五)之多态

    多态 面向对象编程有三大特性:封装.继承.多态. 封装隐藏了类的内部实现机制,可以在不影响使用的情况下改变类的内部结构,同时也保护了数据.对外界而已它的内部细节是隐藏的,暴露给外界的只是它的访问方法. ...

  7. java 多态_Java基础深度总结:多态

    你我皆风华正茂,梦死方坠人生暮年 1.什么是多态 所谓多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量到底会指向哪 ...

  8. java中的多态性_[转载] c++多态与java多态性_Java中的多态性

    参考链接: Java中的加法和串联 c++多态与java多态性 Polymorphism is one of the core concepts of OOPS paradigm. The meani ...

  9. c++多态与java多态性_Java中的多态性

    c++多态与java多态性 Polymorphism is one of the core concepts of OOPS paradigm. The meaning of polymorphism ...

最新文章

  1. 自动化集成:Pipeline整合Docker容器
  2. java中IO流详解
  3. python 堆栈溢出_内存 - 如何发生“堆栈溢出”,如何防止它?
  4. SOA与云计算有多大关联?
  5. CentOS6.4 安装MongoDB
  6. C++,Java,Pathy这几种编程语言的区别
  7. 字符编码(GB 2312、GBK、UTF-8、UTF-16)
  8. 2021年度总结——波澜不惊
  9. 解决Excel表格输入身份证号码显示异常的问题
  10. 手机壁纸网站源码 带全自动采集 响应式手机电脑端模板
  11. 关于音频情感分类的随笔(5)
  12. map的put 方法的返回值 null
  13. 神舟gx8cp5s1uefi安装win10和ubuntu18.04双系统记录
  14. 目标检测的Tricks | 【Trick5】学习率调优方法——warmup
  15. KMP算法图文详解(为什么是next[0]=-1、next[j]=k和k=next[k])
  16. LabVIEW读海康网络摄像头问题
  17. aria2 txt导入_aria2 让下载提速
  18. 马化腾“扛不住了”?微信“跟风”推出新功能,像极了当年的QQ
  19. 中标麒麟龙芯桌面版重置root密码
  20. mac的rubywoo怎么读_迪奥999和mac ruby woo哪个更好看_有什么区别

热门文章

  1. 关于在 matlab 中使用 ode45 算出拉格朗日方程中的关节加速度
  2. Python函数你真的都学会了吗?来看看这篇Python高阶函数!
  3. LeetCode题 - 83. 删除排序链表中的重复元素 python实现
  4. CS231n课程笔记5.4:超参数的选择交叉验证
  5. LVQ,Learning Vector Quantization,学习向量量化
  6. wordcloud词云使用方法
  7. [机器学习-sklearn]K-means之make_blobs聚类数据生成器
  8. 解决JupyterLab中tqdm_notebook进度条不显示问题
  9. 【论文学习】Spatially Variant Linear Representation Models for Joint Filtering
  10. leetcode - 486. 预测赢家