類和方法
類和方法通常在 Smalltalk IDE 中定義。
類
類定義在瀏覽器中看起來像這樣:
XMLTokenizer subclass: #XMLParser
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'XML-Parser'
這實際上是瀏覽器將為你在系統中建立新類的訊息。 (在這種情況下,它是 #subclass:instanceVariableNames:classVariableNames:poolDictionaries:category:
,但還有其他人也會建立新類)。
第一行顯示了你正在子類化的類(在本例中為 XMLTokenizer)以及新子類將具有的名稱(#XMLParser)。
接下來的三行用於定義類及其例項將具有的變數。
方法
方法在瀏覽器中如下所示:
aKeywordMethodWith: firstArgument and: secondArgument
"Do something with an argument and return the result."
^firstArgument doSomethingWith: secondArgument
^
(插入符號)是返回運算子。
** anInteger
"Raise me to anInteger"
| temp1 temp2 |
temp1 := 1.
temp2 := 1.
1 to: anInteger do: [ :i | temp1 := temp1 * self + temp2 - i ].
^temp1
這不是進行求冪的正確方法,但它顯示了二進位制訊息定義(它們被定義為任何其他訊息)和一些方法臨時變數 (或方法 temporaries, temp1 和 temp2 )加上一個塊引數( i )。