2016-04-27 46 views
0

我已經編程下列訪問方法:如何在Smalltalk中打印getter方法的結果?

name 
    "comment stating purpose of message" 
    ^name. 

age 
    "comment stating purpose of message" 
    ^age. 

name:aName 
    name:=aName. 

age: aNumber 
    age:=aNumber. 

的問題是,當我做在菲羅轉錄或遊樂場以下:

|p| 
p:=Person new. 
p name:'Milla'. 
p age: 20. 

p name. 
p age. 
Transcript show:p name. 

它僅顯示消息:

"Transript" 
self 

在操場上

wha我做錯了嗎?

+2

你是什麼意思:「顯示消息自我」?根據你的代碼,成績單應該顯示'p name'的結果 – Uko

回答

3

這聽起來好像你在操場上選擇你的文字和做「檢查它」,然後看到的在檢查,這是你的最後一條消息的結果發送,即show:被送到Transcript出現和Transcript默認返回self。你根本沒有在看成績單。

你想要做的,而不是什麼實際上是開放成績單窗口(World menu>Tools>Transcript),然後而不是做「檢查它」在操場上,只是用「做」,而忽略結果是什麼發送的信息是 - 實際結果將顯示在抄本中,而不是在檢查員中。