“面向对象的基本概念”的版本间的差异

来自姬鸿昌的知识库
跳到导航 跳到搜索
第19行: 第19行:
 
'''<big>类是对象的抽象</big>''','''<big>对象是类的具体化</big>''','''<big>是类的实例</big>'''。
 
'''<big>类是对象的抽象</big>''','''<big>对象是类的具体化</big>''','''<big>是类的实例</big>'''。
  
特殊类是一般类的子类,一般类是特殊类的父类。
+
'''<big>特殊类是一般类的子类</big>''','''<big>一般类是特殊类的父类</big>'''。
  
  
第26行: 第26行:
 
父类和子类之间共享数据和方法的机制。
 
父类和子类之间共享数据和方法的机制。
  
一个父类可以有多个子类,一个子类可以继承其父类(或祖先类)中的属性和方法。
+
'''<big>一个父类可以有多个子类</big>''',一个子类可以继承其父类(或祖先类)中的'''<big>属性和方法</big>'''。
  
 
单重继承:从一个父类A得到继承
 
单重继承:从一个父类A得到继承
第35行: 第35行:
 
重置
 
重置
  
是一种动态绑定机制,使得子类在继承父类的前提下,用适合自己要求的实现去置换父类中的相应实现。
+
是一种动态绑定机制,使得子类在继承父类的前提下,用适合自己要求的实现去置换父类中的相应实现。(覆盖)
  
  
第48行: 第48行:
  
 
接收到信息的对象经过解释,然后予以响应。
 
接收到信息的对象经过解释,然后予以响应。
 +
 +
在收到消息时,对象要予以响应。
 +
 +
不同的对象收到同一消息可以产生完全不同的结果,这一现象称为多态。
 +
 +
不同对象对同一消息的不同的响应。
 +
 +
通用多态:参数多态和包含多态
 +
 +
特定多态:过载多态和强制多态
 +
 +
通用多态对工作的类型不加限制,允许对不同类型的值执行相同的代码;
 +
 +
特定多态只对有限数量的类型有效,而且对不同类型的值可能要执行不同的代码。
 +
 +
 +
过载多态
 +
 +
同一个名(操作符、函数名)在不同的上下文中有不同的类型。
 +
 +
典型的例子是运算符重载和函数重载,属于静态多态。

2022年9月26日 (一) 13:59的版本

https://www.bilibili.com/video/BV1hg411V7Bm?p=84

1)面向对象的基本概念

面向对象=对象+分类+继承+通过消息的通信

面向对象的基本概念.png

对象

程序系统中基本运行的实体,包括数据和数据的操作

一个对象把属性和行为封装成一个整体,实现生产者与使用者的分离。

一个对象通常可由对象名、属性和方法(操作)三部分组成。


定义了一组大体上相似的对象。

类是对象的抽象对象是类的具体化是类的实例

特殊类是一般类的子类一般类是特殊类的父类


继承

父类和子类之间共享数据和方法的机制。

一个父类可以有多个子类,一个子类可以继承其父类(或祖先类)中的属性和方法

单重继承:从一个父类A得到继承

多重继承:一个子类有两个或更多个父类


重置

是一种动态绑定机制,使得子类在继承父类的前提下,用适合自己要求的实现去置换父类中的相应实现。(覆盖)


消息

对象之间的通信构造。


消息传递

当一个消息发送给某个对象时,包含要求接收对象去执行的某些活动的信息。

接收到信息的对象经过解释,然后予以响应。

在收到消息时,对象要予以响应。

不同的对象收到同一消息可以产生完全不同的结果,这一现象称为多态。

不同对象对同一消息的不同的响应。

通用多态:参数多态和包含多态

特定多态:过载多态和强制多态

通用多态对工作的类型不加限制,允许对不同类型的值执行相同的代码;

特定多态只对有限数量的类型有效,而且对不同类型的值可能要执行不同的代码。


过载多态

同一个名(操作符、函数名)在不同的上下文中有不同的类型。

典型的例子是运算符重载和函数重载,属于静态多态。