9、Smalltalk 中类方法的实现与类结构的替代方案

Smalltalk 中类方法的实现与类结构的替代方案

1. 继承与方法搜索机制

在面向对象编程里,继承是极为重要的组成原则。SmaViM 会严格按照类层次结构来搜索类,也就是从一个类开始,搜索它的超类,再到超类的超类,直至最终到达 Object 类。而且,继承原则不仅适用于类实例的结构和行为,也适用于类本身,这意味着一个类会从其超类继承类方法。

虽然由于 Smalltalk 的实现方式,实际情况并非完全如此,但为了简化理解,我们可以假设 Object 类包含一个类方法 new ,其中编写了在虚拟机内存中创建新对象的逻辑。这就表明,每个新类都能理解 new 消息,因为每个类都直接或间接地派生自 Object 类。

2. 方法的实现
2.1 方法定义的结构

方法定义通常包含以下几个部分:
- 消息或调用模式 :展示了将与该方法对应的消息发送给对象时的写法。例如,对于一元消息,消息模式仅由消息选择器组成。
- 注释 :用于描述方法的任务和结果。
- 临时变量声明 :若需要,临时变量会在两个竖线 (|) 之间声明。
- 方法体 :包含实现任务所需的 Smalltalk 表达式,也就是算法部分。

Circle 类的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值