我有一个吱吱声的问题,我对它完全陌生,所以我要问基本知识。我创建了一个类
Object subclass: #Course
instanceVariableNames: 'id name day time isTwoHoursLong'
classVariableNames: ''
poolDictionaries: ''
category: 'Kernel-Objects'
实现以下方法:
isTwoHoursLong: aBoolean
(aBoolean isMemberOf: Boolean)
ifFalse: [self error: 'invalid input value']
ifTrue: [isTwoHoursLong:=aBoolean.].
aBoolean必须为true或false(布尔值的实例)。 现在我尝试使用这个方法:
|c1|
c1:=Course new.
c1 isTwoHoursLong:true.
但由于某种原因,我陷入了发送错误的ifFalse选项。 有人可以帮忙清理一下吗?
答案 0 :(得分:6)
尝试isKindOf:
而不是isMemberOf:
True
和False
是Boolean
和isKindOf:
的子类,测试参数是接收者的类还是超类。
但我可能会完全忽略这个手动类型检查。