Partager via


Classes pour les utilisateurs de Visual Basic 6.0

Mise à jour : novembre 2007

Les classes sont les blocs de construction d'une application orientée objet. Une classe est une construction de programmation qui représente un objet dans le système. La conception d'une application requiert la conception des objets impliqués, des informations contenues par les objets et des opérations que les objets peuvent exécuter. Pour plus d'informations sur les classes et la programmation orientée objet, consultez Programmation orientée objet dans Visual Basic.

Modules de classe

Visual Basic 6.0

Visual Basic 6.0 fournit la prise en charge de la définition des classes via le module de classe. La définition d'une classe est stockée dans un type de fichier spécial, le fichier .cls. Une classe est définie dans chaque module de classe. Une partie de la définition de la classe est incorporée dans le fichier .cls et peut uniquement être modifiée via le système de projet.

Visual Basic 2008

Dans Visual Basic 2008, une classe est définie par Class, instruction (Visual Basic) plutôt que par un nom de fichier. Les classes dans Visual Basic 2008 sont définies dans les fichiers de code source, c'est-à-dire les fichiers .vb. Plusieurs classes peuvent être définies dans un fichier. La définition de classe tout entière est visible sous forme de texte brut dans le code source.

Classes globales

Visual Basic 6.0

Lorsque vous créez une nouvelle classe dans Visual Basic 6.0, GlobalSingleUse et GlobalMultiUse figurent parmi les valeurs possibles de la propriété Instancing. Ceci indique que d'autres composants peuvent appeler les propriétés et méthodes de la nouvelle classe comme s'il s'agissait de membres partagés. Une instance de la classe est créée implicitement lors du premier appel de l'un de ses membres.

Visual Basic 2008

Visual Basic 2008 ne prend pas en charge la propriété Instancing. Visual Basic 2008 fournit les mêmes fonctionnalités en vous permettant d'exposer des membres de module standard. Vous pouvez accéder aux propriétés et méthodes partagées d'une classe à l'aide de l'instruction Imports. Il est possible d'obtenir le même effet que GlobalMultiUse par l'accès à une classe Public et au constructeur approprié.

Données, classes

Visual Basic 6.0

Visual Basic 6.0 prend également en charge les classes Source de données et Data Consumer Complex.

Visual Basic 2008

Il n'existe aucun équivalent direct dans Visual Basic 2008. Pour plus d'informations sur les classes qui manipulent des données, consultez Comment : établir une connexion à des données dans un objet.

Membres par défaut

Visual Basic 6.0

Dans Visual Basic 6.0, vous pouvez spécifier une donnée membre ou une méthode particulière comme le membre par défaut d'une classe.

Visual Basic 2008

Dans Visual Basic 2008, un membre par défaut d'une classe ou d'une structure peut uniquement être une propriété qui utilise un ou plusieurs arguments. Cette mesure a pour but d'assurer l'interopérabilité avec d'autres langages de programmation. Pour plus d'informations, consultez Comment : déclarer et appeler une propriété par défaut en Visual Basic.

Durée de vie de l'objet

Visual Basic 6.0

La durée de vie d'un objet est déterminée par la création et la fin de l'instance de l'objet. Le programme détermine le moment de création des objets qu'il déclare, mais la fin implique un mécanisme plus complexe.

Dans Visual Basic 6.0, chaque instance d'objet gère un décompte de références. Lorsque la dernière référence d'une instance est libérée et que le compteur revient à zéro, l'objet est immédiatement terminé.

Visual Basic 2008

Dans Visual Basic 2008, un destructeur n'est pas nécessairement appelé dès que la dernière référence est libérée. En effet, le Common Language Runtime gère une arborescence des références au lieu de décomptes de références individuelles. Le garbage collector trace cette arborescence des références à l'arrière-plan. S'il détecte un objet ou un groupe d'objets qui ne possèdent aucune référence dans le code actuellement en cours d'exécution, il appelle les destructeurs de ces objets. Il est impossible de prévoir ni l'ordre des destructions, ni le temps qu'il faut au garbage collector pour tracer l'arborescence des références. C'est pour cette raison que la durée de vie d'un objet est indéterminée. Pour plus d'informations, consultez Durée de vie d'un objet : création et destruction des objets et Garbage collection.

Mettre à niveau des options

L'Assistant Mise à niveau crée une mise à niveau simple de modules de classe avec les modifications minimales apportées au code. En plus des modifications répertoriées ci-dessus, les programmeurs Visual Basic peuvent opter pour plusieurs des nouvelles constructions particulièrement adaptées à la programmation orientée objet. Quelques-unes sont répertoriées ci-dessous.

  • Les constructeurs   Les constructeurs remplacent l'utilisation de Class_Initialize de Visual Basic 6.0. Pour plus d'informations, consultez Modifications de Class_Initialize pour les utilisateurs de Visual Basic 6.0.

  • Les propriétés indexées par défaut   Les propriétés indexées par défaut sont fréquemment utilisées dans .NET Framework pour accéder aux éléments de collection. Pour plus d'informations, consultez Modifications des propriétés par défaut pour les utilisateurs de Visual Basic 6.0.

  • La lecture seule   Dans Visual Basic 6.0, une propriété est implicitement accessible en lecture seule s'il n'y a aucune procédure Get. Visual Basic 2008 exige le mot clé ReadOnly pour déclarer explicitement ce comportement. Pour plus d'informations, consultez Property, instruction.

  • La liaison tardive   Visual Basic 6.0 fournissant la liaison tardive par défaut, le moyen le plus sûr de mettre à niveau le code sans provoquer d'erreurs est d'affecter Off à Option Strict. La modification de Option Strict en On applique la sécurité de type au moment de la compilation et peut exposer des erreurs subtiles au moment de la compilation plutôt qu'au moment de l'exécution. Pour plus d'informations, consultez Option Strict, instruction.

  • La surcharge des méthodes   la surcharge des méthodes réduit le nombre de membres nommés d'une classe. Cela rend la classe plus lisible et plus facile à programmer. Pour plus d'informations, consultez Modifications des procédures pour les utilisateurs de Visual Basic 6.0.

  • Le nom de fichier   Visual Basic 6.0 requiert que le nom de classe et le nom de fichier correspondent. Dans Visual Basic 2008, le programmeur contrôle les deux et peut définir plusieurs classes dans un fichier source. Le nombre de classes contenu dans un fichier est généralement traité par une norme de codage.

  • La valeur ByRef   La valeur par défaut des paramètres dans Visual Basic 6.0 est ByRef, par conséquent, la mise à niveau la plus sûre est ByRef. Pour plus d'informations, consultez ByVal.

  • Le mot clé Return   Dans Visual Basic 6.0, le nom de fonction est utilisé comme variable pour retourner la valeur de la fonction. Visual Basic 2008 fournit le mot clé Return explicite pour retourner des valeurs fonctionnelles. Pour plus d'informations, consultez Return, instruction (Visual Basic).

  • La surcharge d'opérateur   Vous pouvez désormais définir la signification de l'addition (+), de la soustraction (-) et d'autres opérateurs pour les classes que vous définissez. Pour plus d'informations, consultez Operator, instruction.

  • Les nouveaux opérateurs   L'opérateur += peut raccourcir et simplifier une ligne de code. Pour plus d'informations, consultez Opérateurs arithmétiques (Visual Basic).

  • La définition en ligne de nouvelles valeurs   Dans Visual Basic 2008, la syntaxe permet de déclarer et de définir la valeur d'une nouvelle variable en une seule ligne de code. Cela signifie que vous pouvez appliquer des contraintes de données à partir du moment où l'objet est instancié. Pour plus d'informations, consultez Dim, instruction (Visual Basic).

La réécriture du code n'est pas sûre. Lorsque le code est modifié, il doit être testé une nouvelle fois. De même, certains mots clés dans Visual Basic 2008 n'agissent pas exactement de la même façon que dans Visual Basic 6.0. Pour plus d'informations, consultez Mise à niveau d'applications créées dans des versions précédentes de Visual Basic.

Voir aussi

Concepts

Liaison anticipée et liaison tardive

Modifications de Class_Initialize pour les utilisateurs de Visual Basic 6.0

Référence

Structure, instruction

Property, instruction

Option Strict, instruction

Return, instruction (Visual Basic)

Impossible de combiner 'ByVal' et 'ByRef'

ByRef

Autres ressources

Création et utilisation d'objets

Présentation des classes