参考:https://www.jianshu.com/p/0aac0ba06808
最近在学习Object C,Object C很多特性继承了smalltalk语言的特性,所以先了解一下smalltalk语言。smalltalk起源于上个世纪70年代,被公认为历史上第二个面对对象的程序设计语言,有自己的语法和语义。跟现在流行的编程语言有点差别,所以即使你是资深程序员,可能也一眼看明白它的意思。
特点
1.所有的东西都是对象。
2.通过发送消息,通知对象要做什么。可以理解为函数调用请求。
3.每个对象都有自己的存储空间,可容纳其他对象。
4.每个对象都有一种类型。每个对象都是某个“类”的一个实例。一个类最重要的特征就是能将消息发送给他。
5.同一类所有对象都能接收相同的消息。比如形状shape和圆circle的关系,圆完全能接收形状消息。
关键字
true:表示真对象
false:表示假对象
nil:空对象
self:自己,调用当前类的消息时使用
super:调用父类消息时使用
基础语法
- 注释:用双引号包围。 e.g. "这是注释"
- 字符串:用单引号包围。 e.g. '这是一个字符串'
- 单个字符:e.g. $c
- 符号(Symbol):e.g. #thisIsASymbol大家也许对符号这个概念比较陌生。简单来说,如果两个符号的值一样,那么它们在内存中也是相同的对象。后面的 Ruby 等语言也继承了这一设计。
- 变量声明:e.g. | a | ,也可以一次声明多个:| a b c |
- 赋值语句:e.g. a := 5
- 相等性与同一性:相等性使用 = ,相当于 Java 中的 equals() 。同一性使用 == ,即判断内存地址相同。
- 返回语句:^ a 即其他语言中的 return a 。
- 级联:不同于大多数语言,Smalltalk 使用
.