多态是为了是程序具有更好的扩展性,并可以对类进行通用的处理。在面向对象语言中,接口的多种不同的实现方式即为多态!那么这个是怎样体现的呢?

我们先看一段程序:

package stduy;abstract  class Animal{abstract void eat();
}class Dog extends Animal{public void eat() {System.out.println("啃骨头!");}public void LookHome() {System.out.println("看家!");}
}class Cat extends Animal{public void eat() {System.out.println("吃鱼!");}public void catchMouse() {System.out.println("抓老鼠!");}
}public class Main{public static void main(String[] args) {Dog dog = new Dog();dog.eat();dog.LookHome();Cat cat = new Cat();cat.eat();cat.catchMouse();}}

我们发现在主程序中频繁调用吃这个概念写起来很麻烦,尤其在不同类调用多个同样行为后会出现大量的代码量!

这个时候只需要将main改成

public class Main{public static void main(String[] args) {Dog dog = new Dog();      Cat cat = new Cat();method(dog);method(cat);}public static void method(Animal a) {a.eat();}
}

这样就显得简单多了,尤其在代码量大的时候这种行为更加方便!

(JAVA基础)什么是多态?为什么要使用多态?相关推荐

  1. Java基础篇:封装、继承、多态三大特性

    目录: 一.Java三大特性之:封装 二.Java三大特性之:继承 三.Java三大特性之:多态 一.Java三大特性之:封装 1.什么是封装: 封装,就是将数据和基于数据的操作封装在一起,数据被保护 ...

  2. 大数据笔记8—java基础篇4(面向对象-封装-继承-多态)

    面向对象 一.面向对象 1.面向过程 1.2.举例 1.3.总结 二.面向对象 1.简述 2.举例 3.思想特点 2.1.类的定义格式 2.1.1.简述 2.2.2.格式 2.3.3.示例 三.类的使 ...

  3. 【java基础】第11天——接口、多态

    今日内容介绍 1.接口 2.多态 01(面向对象)接口概述.avi 02(面向对象)接口抽象方法定义.avi 03(面向对象)接口的实现类.avi 04(面向对象)接口中的成员变量的特点.avi 05 ...

  4. Java基础知识融合(Arraylist集合,多态,继承,封装,包装类,循环嵌套,if嵌套等等)

    目录 1.项目大纲 1.项目前提 2.项目说明 3.项目内容 3.该软件完成以下功能: 2.软件设计 1.结构 2.类设计 3. 部分代码展示 心得: 1.项目大纲 1.项目前提 掌握java基本语法 ...

  5. java写一个外网访问的接口_【JAVA基础】一个案例搞懂类、对象、重载、封装、继承、多态、覆盖、抽象和接口概念及区别(中篇)...

    0 前言 初学JAVA时,总会对一些概念一知半解,相互混淆,不明其设计的用意,如类.对象.重载.封装.继承.多态.覆盖.抽象类.接口概念.为便于理解和巩固,本文将基于一个案例及其变形,展现各个概念的定 ...

  6. java 多态判断非空_跳槽涨薪季面试题之java基础(一)

    点击上方[全栈开发者社区]→右上角[...]→[设为星标⭐] 为迎接金九银十跳槽涨薪季,小编汇总了java精编版面试题,大概从java基础.java8特性.多线程.spring.springboot. ...

  7. Java基础:继承、多态、抽象、接口

    第一讲    继承 一.继承概述 1.多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那个类即可. 2.通过extends关键字可以实现类与类的 ...

  8. Java基础之多态深入解析

    Java基础之多态深入解析 多态的基本概念 同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果,这就是多态性.简单的说:就是用基类的引用指向子类的对象. 多态的优点 消除类型之间的耦合关系 ...

  9. java基础之多态的详细解释_JAVA基础之多态

    下面我为大家讲解一下JAVA基础之多态,希望大家喜欢. 多态就是事物存在的多种形态,比如你在大街上看见一只藏獒,你可以说这只藏獒真凶猛,也可以说这只狗真凶猛,还可以说这个动物真凶猛,以上三种说法其实都 ...

  10. 多重继承_Python 和 Java 基础对比 10 —— 类的封装、继承和多态

    @Python大星 一.Python 类的封装.继承和多态 封装 继承 Python 支持多父类的继承机制,所以需要注意圆括号中基类的顺序,若是基类中有相同的方法名,并且在子类使用时未指定,Pytho ...

最新文章

  1. windows7 64位操作系统上使vs2010和vs2013能够并存的处理方法
  2. [ruby] wxRuby安装
  3. html局部可复制,截取网页局部区域css样式的方法和系统的制作方法
  4. 学到了关于服务器磁盘阵列
  5. SQL语句--INSERT INTO SELECT 语句用法示例
  6. Springboot使用AOP记录请求日志和返回数据
  7. ssh: Could not resolve hostname gitcafe.com: nodename nor servname provided, or not known
  8. socket通信需要网线连接吗_socket方式实现网络通信
  9. Matlab图像分割
  10. GlassFish 理解
  11. linux查询系统版本信息命令,命令查询windowsLinux系统版本信息
  12. thinkadmin关联查询
  13. 微信公众号快速增粉攻略详解
  14. 发布订阅模式,在工作中它的能量超乎你的想象
  15. python开发工具-5个最好用的Python编程开发工具(IDE)分享
  16. 扫地机器人哪个牌子好用?高性价比扫地机器人推荐
  17. Elasticsearch 入门
  18. 嵌入式linux 不识别sata,sata硬盘识别不了的常见问题和解决方法
  19. 360影视爬虫--python
  20. sx1268 中文_SX1268LORAHAT用户手册

热门文章

  1. tf.data.Dataset与tfrecord学习笔记
  2. java plugin_Java Plugin类代码示例
  3. 第二周:Greenfoot游戏开发(螃蟹吃沙蠕虫)
  4. windows下TortoiseGit安装教程
  5. 第二章 一波未平 校园江湖
  6. STC15W408AS单片机使用CH340下载工具下载程序一直停留在检测单片机型号
  7. 基于改进AlexNet的植物中草药分类系统(源码&教程)
  8. 机器人定位技术 激光SLAM与视觉SLAM谁更胜一筹?
  9. Teradata和Exadata
  10. Javascript 中发出 HTTP 请求