Smalltalk编程:赋值语义与重复结构解析
1. Smalltalk变量赋值语义
1.1 变量命名与类型特性
在Smalltalk中,由多个单词组成的标识符采用驼峰命名法,例如 MonthNames 或 rectangleSide 。Smalltalk变量在声明时仅规定名称,对可绑定的对象类型没有任何限制,即变量不是静态类型的。这意味着一个变量可以引用任何对象,并且可以通过重新赋值随时更改绑定。例如:
| all |
all := 25.
all := f
all := #('hello' 123 e)
1.2 赋值语义类型
考虑以下Smalltalk代码序列:
| x y |
x := 2.0 sqrt.
y := x
这里存在两种赋值语义:
- 值语义 :复制绑定到 x 的对象,然后将其绑定到变量 y 。
- 引用语义 :将变量 x 中的引用复制到变量 y ,使两个变量随后引用同一个对象。
Smalltalk仅使用引用语义。当执行 y := x 后, x 和
超级会员免费看
订阅专栏 解锁全文
55

被折叠的 条评论
为什么被折叠?



