A class instance variable is just a regular instance variable, but it happens to be the variable of an object that represents a class. It can be accessed only the class methods of the class. Further, each subclass has its own copy of the variable, because each subclass is represented by a different object. The image almost never uses class instance variables, but there are plenty of places where it should. In particular, sometimes a variable is cached in a class variable, but every subclass would like to change that variable.
Menus are a good example.
For these cases, a class instance variable would be better. But most of the time you don't need to cache the values at all. Just give each class a method that computes the menu, so each class can do it differently. That is the way it happens in most classes now. I saw on the class side that class side can have instance variable.