第七章 深入理解多态

1.里氏替换原则:

在一个软件系统中,如果子类出现在父类出现的位置,而整个软件功能又没有影响,那么咱们称为里氏替换。

父类变量指向子类对象!!

2.Is 和as

Is 做类型判定,  要想进行父类对象    到子类  类型的转换,还得用 as

3.两种方式实现多态:

普通类+  虚方法

抽象类+抽象方法

市面上所有教程 都会明确指出一个观点 :抽象类不能实例化 。

4.内容总结:

1,实现面向对象的多态性有哪几种方法?

总共有3种,第一种,虚方法实现多态,  第二种:抽象方法实现多态  第三种:接口实现多态

目前为止,我们学了两种:

第一种:虚方法实现多态

通过在普通类Person中用Virtual关键字定义虚方法SayHello(),然后在子类Student中通过override关键字对父类的SayHello()方法进行重写。

第二种:抽象方法实现多态

通过在抽象类Birds中定义抽象方法Fly(),然后在子类【燕子】中对抽象方法Fly()进行重写实现多态,重写方式和虚方法一样,也是使用override关键字

2,抽象类可以被继承吗?

可以,不仅可以被普通类继承,也可以被抽象类继承

转载于:https://www.cnblogs.com/ppdpp/p/7635565.html

深入.NET平台和C#编程笔记 第七章 深入理解多态相关推荐

  1. 《Go语言圣经》学习笔记 第七章 接口

    <Go语言圣经>学习笔记 第七章 接口 目录 接口是合约 接口类型 实现接口的条件 flag.Value接口 接口值 sort.Interface接口 http.Handle接口 erro ...

  2. Effective C++ 学习笔记 第七章:模板与泛型编程

    第一章见 Effective C++ 学习笔记 第一章:让自己习惯 C++ 第二章见 Effective C++ 学习笔记 第二章:构造.析构.赋值运算 第三章见 Effective C++ 学习笔记 ...

  3. Java7并发编程指南——第七章:定制并发类

    Java7并发编程指南--第七章:定制并发类 @(并发和IO流) Java7并发编程指南第七章定制并发类 思维导图 项目代码 思维导图 项目代码 GitHub:Java7ConcurrencyCook ...

  4. [云数据中心] 《云数据中心网络架构与技术》读书笔记 第七章 构建多数据中心网络(1/3)

    7.1 多数据中心的业务诉求场景 7.1.1 多数据中心的业务场景分析 主流需求:虚拟化和资源池化,形成多活,可就近提供服务 1. 业务跨数据中心部署 2. 两地三中心 是指在同城双活的数据中心基础上 ...

  5. java学习笔记-第七章:面向对象编程(基础部分)

    第七章:面向对象编程(基础部分) 总体内容 类与对象 引出类与对象 类与对象概述 类与对象的关系示意图 属性概念及其细节 类与对象快速入门案例 对象内存布局 类与对象内存分配机制 引申:java内存的 ...

  6. 吴恩达机器学习学习笔记第七章:逻辑回归

    分类Classification分为正类和负类 (规定谁是正谁是负无所谓) 吴恩达老师举例几个例子:判断邮箱是否是垃圾邮箱 一个在线交易是否是诈骗 一个肿瘤是良性的还是恶性 如果我们用之前学习的lin ...

  7. In-memory Computing with SAP HANA读书笔记 - 第七章:Business continuity and resiliency for SAP HANA

    本文为In-memory Computing with SAP HANA on Lenovo X6 Systems第七章Business continuity and resiliency for S ...

  8. UINX环境高级编程笔记 第3章 文件I/O

    UNIX环境高级编程 第三章 文件I/O 3.1 引言 3.2 文件描述符 3.3 函数open和openat 3.4 函数creat 3.5 函数close 3.6 函数lseek 3.7 函数re ...

  9. Java编程思想读书笔记——第七章:复用类

    第七章 复用类 使用类而不破坏现有程序代码,有两种达到这一目的的方法: 在新的类中产生现有类的对象,也就是说new一个对象,这种方法称为组合 按照现有类的类型来创建新类,不改变现有类的形式,在其基础上 ...

最新文章

  1. python文件读写_python文件操作-读写删除复制总结
  2. 35岁前十件事该做好
  3. UVa1374 Power Calculus(IDDFS)
  4. hadoop重命名文件_面试系列:深入理解hadoop架构体系
  5. MySQL语法解析和预处理(Parser Preprocessor)
  6. HDU - 4416 Good Article Good sentence(广义后缀自动机/后缀自动机)
  7. 部署前端项目 Linux系统的nginx配置
  8. Python爬虫抓取网页
  9. C语言及程序设计基础 课程主页
  10. 十四首中国现代诗巅峰之作
  11. 筋膜枪方案-无刷马达方波运用1
  12. 拼多多Temu如何批量养国外买家账号进行拉新?
  13. STM32串口通信、串口调试助手
  14. 从TikTok功能优化,抓住直播带货机遇
  15. 小说阅读大全(安卓)最后一个绿色版。
  16. 三菱PLC FX3GA系列 FNC57 PLSY 脉冲输出
  17. 12 个好用且不花钱的网络监控工具
  18. Springboot+Redis初体验
  19. AIX系统管理界面工具SMIT快捷方式
  20. python共享单车数据分析_数据分析_共享单车骑行时间分析-zeropython

热门文章

  1. ArcGIS 代理产品价格以及折扣表、产品描述
  2. 用xargs处理带空格文件名
  3. ExtJs懒人笔记(2) ExtJs页面布局
  4. ICCV2021|STMN:双记忆网络提升视频行人ReID性能
  5. IEEE 第二届大数据、人工智能与物联网工程国际会议 (IEEE-ICBAIE 2021)
  6. 项目合作| 视频监控解决隧道洗车线的安全问题
  7. 谷歌CEO支持欧盟禁止人脸识别!微软总裁:能用“手术刀”就别用“切肉刀”...
  8. MTCNN可攻破?华为提出一种可复制、可靠的攻击方法
  9. 目标检测:Segmentation is All You Need ?
  10. CMU | 深度学习模型中集成优化、约束和控制