Une classe, c'est un objet virtuel, c'est-à-dire que ça peut contenir des données et faire certaines choses, mais pas avant d'être instancié (d'avoir une existence concrète en mémoire). Un exemple va t'aider à y voir clair:
J'ai une classe "ClsRond". ClsRond a deux propriétés (que je vais initialiser avec la fonction Initialize de la classe): position du centre, longueur du rayon. ClsRond a deux méthodes (deux subs): Initialize (obligatoire) et Dessiner. Le but de la classe est de dessiner des ronds. Tel quel, ClsRond n'occupe pas de mémoire et ne sert pas à grand chose car si j'appelle l'une des deux fonctions directement, je vais avoir une erreur. Il faut que je l'instancie. Exemple: Dim MonRond as ClsRond. Ainsi, un objet réel est créé avec les propriétés et les méthodes de la classe. A partir de là, je peux appeler Initialize, puis Dessiner.
L'intérêt de la classe, c'est que je peux créer plusieurs objets différents sur le même modèle. C'est pourquoi on fait parfois une analogie entre les classes et les moules (à gâteau, pas les mollusques). En mettant de la pâte dans le moule, on obtient toujours la même forme. Chaque gâteau peut être décoré différemment ou mangé par des gens différents, ça n'a pas d'importance. Chaque objet a sa vie propre.
Quand tu supprimes une instance de la classe (MonRond = null), tu ne supprimes pas la classe car la classe n'a qu'une existence virtuelle. Manger le gâteau ne supprime pas le moule.
Cette façon de présenter les classes n'est pas très orthodoxe ni tout à fait exacte, mais j'espère qu'elle t'aura aidé à y voir plus clair.