我有很多时间理解我在squeak程序中遇到的错误,并且无法修复和调试它。就像在这种情况下:
我在squeak中写了以下代码是smalltalk语言:
initilize
super initialize.
path := OrderedCollection new.
-
drawOn: aCanvas
| colors |
colors := Color wheel: 10.
colors withIndexDo:[:c :i |
aCanvas fillOval: (self bounds insetBy: self width/25*i+1 )
color: c
].
-
handlesMouseDown: evt
^true.
-
mouseDown: evt
self position: self position + (10@0).
-
startAnimation
path reset.
0 to: 9 do: [:i | path add: self position +(0@(10*i))].
path := path, path reverse.
self startStepping.
-
step
path size > 0 ifTrue: [self position: path removeFirst].
这是我在工作区中编写的代码:
myMorph := TestMorph new openInWorld.
但是我收到了错误,我写了一些关于“步骤”方法中“大小”问题的内容 有人能看到问题吗?
答案 0 :(得分:5)
当您收到有关UndefinedObject
的错误消息时,通常意味着某些变量未正确初始化,其值为nil
。
错误是您拼写错误initialize
您改为编写initilize
。创建对象时不调用此方法,因此path
实例变量是undefined(nil)。