看了tij讲多态那一章。oo中多态有几种表现机制,继承,接口都可以实现多态。java中实现多态是因为采用了后期绑定,即在编译时进行前期绑定,与接口、父类绑定,执行时才与实现类绑定,即所谓的后期绑定策略。
函数的覆写与重载。
覆写:在子类中实现了父类中实现的方法,参数型别一样。
重载:在子类中实现了父类中实现的方法,参数型别不一样。
函数重载并不是多态的表现,多态的前提是后期绑定,即通过接口或父类调用子类的函数,而被子类重载过的函数并不能通过父类调用,所以不能后期绑定。
抽象方法没有body!含有抽象方法的类即为抽象类,是为了抽象更纯粹的类的定义而设计的(相比之下,接口更纯粹一点),抽象类中可以含有方法的实现(与接口的区别)。
接口、抽象类的设计都是为了oo中的多态。在系统的设计中,如果涉及到多态的问题,应该考虑采用这两种方案解决。
分享到:
相关推荐
第7章:函数 第8章:预处理命令 第9章:指针 第10章:数组 第11章:数组,结构体,共同体 第12章:面向对象 第13章:面向对象2 第14章:继承 第15章:多态,动态类型和动态绑定 第16章:类的初始化 第17章:分类和...
C#第七章 深入理解多态.pdfC#第七章 深入理解多态.pdf C#第七章 深入理解多态.pdfC#第七章 深入理解多态.pdf C#第七章 深入理解多态.pdfC#第七章 深入理解多态.pdf
- **第7章:多态**:探索多态性,包括方法重写与方法重载,以及接口的使用。 - **第8章:接口与内部类**:深入了解接口的作用与应用场景,以及内部类的特点和用途。 ##### 第三部分:高级主题 - **第9章:异常处理...
**第七章:多态** 多态是指不同对象对同一消息(方法调用)的不同响应。在C#中,多态通过虚方法和重写实现,允许子类提供自己的实现。这增强了代码的灵活性,允许使用更抽象的类型来处理具体类型。 **第九章:序列...
* 第7章:基本类型和它们的字面量表示 * 第8章:常量和变量 - 顺便介绍了类型不确定值和类型推断 * 第9章:运算操作符 - 介绍了更多的类型推断规则 * 第10章:函数声明和调用 目录2:Go语言高级主题 * 第11章:...
### Unity基础 C# 第六章 继承与多态 #### 一、继承的基本概念 在面向对象编程中,继承是一种强大的工具,它允许我们基于现有的类定义新的类。这不仅可以减少代码重复,还能使代码结构更加清晰。通过继承,子类会...
"北大青鸟C#第六章 初始继承和多态参考答案.zip"这个压缩包文件包含了与北大青鸟S2阶段C# OOP相关的上机练习、课后作业和示例的解答,重点讲解了继承和多态这两个关键的OOP特性。 1. 继承:继承是面向对象编程中的...
第七章:文件操作技术 文件与流管理,高级文件操作技巧,处理日志与配置文件必备。 第八章:数据库交互 ADO.NET框架下的数据库连接、SQL执行与数据绑定,事务处理概览。 第九章:.NET与Web服务 .NET架构解析,W
第七章:封装 封装是OOP的三大特性之一,通过封装隐藏实现细节,提供公共接口。本章会探讨如何使用封装来提高代码的安全性和可维护性。 第八章:多态 多态是指不同对象对同一消息作出不同响应的能力。C++中的多态...
6. **第七章:迭代器与比较器** - 迭代器是遍历集合元素的接口,比较器则用于自定义对象的比较规则。这两个工具在处理数据时非常常见。 7. **第八章:异常处理** - 异常处理是Java中处理错误的重要机制,包括try-...
7. **继承与多态的区别**: - 继承主要关注代码的复用,子类继承父类的所有属性和方法,可以直接使用或重写。 - 多态则更强调通过接口来表现不同类型的对象的多样性,允许子类根据自身特性覆盖或扩展父类的方法。 ...
"第七章 异常.pdf"将讲述如何使用try-catch语句块捕获和处理异常,以及finally块的使用。 通过这七章节的学习,初学者将能全面了解Java面向对象编程的基本原理和实践技巧,为后续深入学习和开发奠定坚实基础。每个...
Java
#### 第7章:复用类 - **继承**:介绍如何通过继承机制实现类的复用,子类可以继承父类的属性和方法。 #### 第8章:多态 - **多态性**:通过重写方法实现不同行为的能力。 - **抽象类与接口**:抽象类提供了基本...
该教程从第一章到第七章,逐步引导读者深入理解.NET平台的基础架构以及C#语言的语法特性。 第一章:.NET概述 在这一章中,我们首先会接触到.NET Framework的整体架构,包括Common Language Runtime (CLR)、类库以及...
在第7题中,哪个选项可以做为以下方法的覆盖方法〔A〕。这道题考察了方法覆盖的基础知识,方法签名和参数列表的使用。 在第8题中,在子类构造方法的哪个地方可以调用超类的构造方法〔B〕。这道题考察了构造方法的...