面向对象中的多态简单理解

简介: 面向对象中的多态简单理解

  百度百科解释多态(英语:polymorphism):指为不同数据类型的实体提供统一的接口。

  把代码写成文字叫思想上移,把代码写出来叫行动下移,以下是代码:

class Animal{
  public virtual string Shout(){
    return "";
  }
}
class Cat:Animal{
  public override string Shout(){
    return "喵喵";
  }
}
class Dog:Animal{
  public override string Shout(){
    return "汪汪";
  }
}
………………
//animal1、2、3、4是不同数据类型的实体
Animal animal1=new Cat();
Animal animal2=new Dog();
Animal animal3=new Bird();
Animal animal4=new Pig();
//shout是统一的接口
animal1.shout();
animal2.shout();
animal3.shout();
animal4.shout();

  不同的数据类型的实体有相同的方法(统一的接口),方法有不同的实现。上面的四个动物类虽然都会叫,但是各有各的叫声,这就是不同的实现。


相关文章
|
11月前
|
JavaScript 前端开发 数据管理
vue2知识点:理解vuex、安装vuex、搭建vuex环境
vue2知识点:理解vuex、安装vuex、搭建vuex环境
93 0
|
IDE 开发工具 Android开发
安卓与iOS开发环境对比:选择适合你的平台
【7月更文挑战第26天】在移动应用开发的广阔天地中,安卓和iOS两大平台各领风骚。本文将深入探索这两个平台的软件开发环境,从编程语言、工具集到用户界面设计,全方位比较它们的差异与优势。无论你是初涉移动开发的新手,还是寻求转型的资深开发者,这篇文章都将为你提供宝贵的参考信息,助你做出明智的选择。
|
自然语言处理 Python
让大模型像学生一样解数学题,正确率提升14%,微软的MathPrompter了解一下
让大模型像学生一样解数学题,正确率提升14%,微软的MathPrompter了解一下
229 0
|
程序员 数据库
VB.NET—Bug调试(参数话查询、附近语法错误)
VB.NET—Bug调试(参数话查询、附近语法错误)
127 0
|
弹性计算 安全 NoSQL
关于对ESC的体验结果
我是一名大二的学生,因着对云服务器有着浓厚的,之前使用过,听说阿里云这里的云服务器还是不错的,就想先申请免费使用两个月试一试。
|
芯片
平头哥RVB2601板子上手——ADC采集与CSI
本文介绍了CH2601芯片的内部ADC与其驱动的测试,通过测试了解ADC驱动的工作过程。
527 0
平头哥RVB2601板子上手——ADC采集与CSI
|
CDN 弹性计算 API
标记(TAG)您的 CDN 资源——域名(domain)
为了方便管理阿里云 CDN 资源——域名(domain) ,您可以选择通过标签的形式为每个资源分配您自己的元数据。本主题介绍标签并说明如何创建标签
2701 0
标记(TAG)您的 CDN 资源——域名(domain)
|
Web App开发 域名解析 数据库
史上最详细阿里云服务器搭建及域名申请攻略
摘要:本文是用阿里云虚拟主机搭建服务器和测试的攻略,如果你想要的服务器是用来做:个人网站、微信开发、接口开发、小型数据库、毕业设计,那么你应该是找对了。本文包含:阿里云虚拟主机搭建、万网域名申请和解析、使用ftp上传文件到服务器 写在前面 服务器是我们学习开发的过程中必不可少的内容,本文带领大家学习如何搭建一个属于自己的服务器。
12417 0
实用正则表达式
http://www.cocoachina.com/programmer/20160513/16243.html
586 0