- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
**可以通过合并两个或者更多的抽象特性来形成新的抽象。一个类可以继承自多个基类的能力被称为多重继承。助教合并继承?第30页,共81页,星期日,2025年,2月5日**创建匿名类的条件只能创建一个匿名类的实例匿名类必须继承于父类或接口,并且不需要构造函数进行初始化。p.add(newButtonAdapter(“Quit”){ publicvoidpressed(){System.exit(0);} });Java语言中的匿名类?第31页,共81页,星期日,2025年,2月5日**继承使得构造函数这个过程变得复杂由于父类和子类都有待执行的初始化代码,在创建新对象时都要执行Java等语言只要父类构造函数不需要参数,父类的构造函数和子类的构造函数都会自动地执行。当父类需要参数时,子类必须显示地提供参数。在java中通过super这个关键字来实现。继承和构造函数?第32页,共81页,星期日,2025年,2月5日**子类关系是通过创建新类的声明语句来建立的,但它并未解释子类存在的意义和目的。第10章子类和子类型第33页,共81页,星期日,2025年,2月5日**可替换性是面向对象编程中一种强大的软件开发技术。可替换性的意思是:变量声明时指定的类型不必与它所容纳的值类型相一致。这在传统的编程语言中是不允许的,但在面向对象的编程语言中却常常出现。可替换性第34页,共81页,星期日,2025年,2月5日**如果说新类是已存在类的子类型,那么这个新类不仅要提供已存在类的所有操作,而且还要满足于这个已存在类相关的所有属性。因此,即使符合堆栈的接口定义,但是不满足堆栈的属性特征,也不是子类型子类与子类型间的差异第35页,共81页,星期日,2025年,2月5日**子类型关系是通过行为这个术语描述的,与新类的定义或构造无关。例如:Dictionary类支持与Array类相同的接口,因此即使Dictionary类与Array类之间并不存在继承关系,但是也可以说Dictionary是Array的子类型。第36页,共81页,星期日,2025年,2月5日**面向对象语言的强大之处在于对象可以在运行时动态地改变其行为。编程语言中,术语静态总是用来表示在编译时绑定于对象并且不允许以后对其进行修改的属性或特征。术语动态用来表示直到运行时绑定于对象的属性或特征。第11章静态行为和动态行为第37页,共81页,星期日,2025年,2月5日**变量的静态类是指用于声明变量的类。静态类在编译时就确定下来,并且再也不会改变。变量的动态类指与变量所表示的当前数值相关的类。动态类在程序的执行过程中,当对变量赋新值时可以改变。静态类和动态类第38页,共81页,星期日,2025年,2月5日**对于静态类型面向对象编程语言,在编译时消息传递表达式的合法性不是基于接收器的当前动态数值,而是基于接收器的静态类来决定的。P167例子静态类型和动态类型的区别第39页,共81页,星期日,2025年,2月5日**替换原则可以通过提升数值在继承层次上的位置来体现。有时则相反,还需要判断一种变量目前所包含的数值是否为类层次中的低层次类。运行时类型决定第40页,共81页,星期日,2025年,2月5日**做出数值是否属于指定类的决定之后,通常下一步就是将这一数值的类型由父类转换为子类。这一过程称为向下造型,或者反多态,因为这一操作所产生的效果恰好与多态赋值的效果相反。向下造型(反多态)第41页,共81页,星期日,2025年,2月5日**静态方法绑定/动态方法绑定响应消息时对哪个方法进行绑定是由接收器当前所包含的动态数值来决定的。方法绑定第42页,共81页,星期日,2025年,2月5日**Animalpet;pet=newDog();pet.speak();pet=newbird();pet.speak();例???第43页,共81页,星期日,2025年,2月5日**如果方法所执行的消息绑定是由最近赋值给变量的数值的类型来决定的,那么就称这个变量是多态的。Java,Smalltalk等变量都是多态的。C++声明为简单类型的变量,非多态。多态变量?第44页,共81页,星期日,2025年,2月5日**使用指针或引用;相关方法声明为virtual;才可以实现多态消息传递。C++第45页,共81页,星期日,2025年,2月5日**继承和替换原则的引入对编程语言的影响类型系统赋值的含义等价测试复制建立存储分配第12章替换的本质第46页,共81页
您可能关注的文档
最近下载
- 凸显数学本质的情境教学策略——特级教师张齐华《会说话的百分数》教学赏析.pdf VIP
- azbil阿自倍尔操作手册用户使用说明书智能阀门定位器 300 系列 支持 HART 通信 + 开度信号反馈 型号 AVP307.pdf
- 2021年北京市第一次普通高中学业水平合格性考试物理试题解析版.pdf VIP
- 数字电子技术(第三版)佘新平习题答案解析.pdf
- 投标文件,商务标,技术标,进度规划.doc
- 摄影测量学 第二版 课后答案.pdf
- 车辆实时位置查询解决方案.docx VIP
- 基于PWM控制的直流电动机调速系统设计及MATLAB仿真.doc VIP
- 汽车构造全册课件.pptx
- 精准医疗行业市场发展现状及前景趋势与投资分析研究报告(2024-2030版).docx
原创力文档


文档评论(0)