The next step is to associate a description with the class. You do this by sending a message to the new class:
Account comment: 'I represent a place to deposit and withdraw money'
A description is associated with every Smalltalk class, and it's considered good form to add a description to each new class you define. To get the description for a given class:
And your string is printed back to you. Try this with class Integer, too:
However, there is another way to define classes. This still translates to sending objects, but looks more like a traditional programming language or scripting language:
Object subclass: Account [ | balance | <comment: 'I represent a place to deposit and withdraw money'> ]
This has created a class. If we want to access it again, for example to modify the comment, we can do so like this:
Account extend [ <comment: 'I represent a place to withdraw money that has been deposited'> ]
This instructs Smalltalk to pick an existing class, rather than trying to create a subclass.