There are three types of window classes:
These types differ in scope and in when and how they are registered and destroyed.