J'essaie d'implémenter une nouvelle classe dans Squeak, et pour une raison quelconque, lorsque je lance un test, j'obtiens une erreur MessageNotUnderstood, même si le message est défini. Code de classe:Constructeur introuvable
Object subclass: #ClassAnalyzer
instanceVariableNames: 'theClasses'
classVariableNames: ''
poolDictionaries: ''
category: 'OOP3'!
!ClassAnalyzer methodsFor: 'initialize-release' stamp: 'NK 11/30/2009 22:50'!
initialize: setOfClasses
theClasses := setOfClasses.! !
!ClassAnalyzer methodsFor: 'initialize-release' stamp: 'NK 11/30/2009 22:49'!
newWith: input
[input isKindOf: Collection]
ifFalse: [^ClassAnalyzer new: input].
^ClassAnalyzer new: (input asSet).! !
Et voici le test j'ai couru:
| abcd z |
z:=1class.
abcd:= ClassAnalyzer newWith: z.
Toute idée de ce que je fais mal? Ma théorie actuelle est que lorsque vous invoquez un constructeur, il n'y a pas encore d'objet, donc ça devrait être un peu différent (peut-être qu'il devrait y avoir une fonction prédéfinie du même nom dans Object ou protoObject) irions-nous sur la définition d'un constructeur nommé none standard sans changer Object?