【发布时间】:2016-04-09 08:30:49
【问题描述】:
我是 Smalltalk (Squeak) 的新用户(实际上是在课程中学习)。 我有一种方法可以检查一个矩形是否等于给定的矩形,如下所示:
isEqual:givenRec
self a = givenRec a
ifTrue: [
self b = givenRec b
ifTrue: [
^true
].
^false
].
self b = givenRec a
ifTrue: [
self a = givenRec b
ifTrue: [
^true
].
^false
].
^false
我的问题是 - 有没有办法更好地写这个?让它更紧凑?
还有 - 为什么我不能引用 a ,它是带有 self 内部方法的 instanceVariableNames?
感谢您的帮助!
编辑:
这是类的定义方式:
MyShape subclass: #MyTriangle
instanceVariableNames: 'a b c'
classVariableNames: ''
poolDictionaries: ''
category: 'Ex2'
MyShape 只是从Object 派生而来,什么都没有。
【问题讨论】: