Mots clés overloads et overrides, exemple
Mise à jour : novembre 2007
Cet exemple montre comment étendre des classes dérivées avec des fonctionnalités de langage Visual Basic telles que la surcharge et la substitution. Il montre également comment autoriser plusieurs niveaux d'accès aux membres d'une classe, y compris Public, Private et Protected.
Pour obtenir des exemples et leurs instructions d'installation
Effectuez une ou plusieurs des opérations suivantes :
Dans le menu ? (Aide), cliquez sur Exemples.
Le fichier Readme contient des informations sur les exemples.
Accédez au site Web Exemples Visual Studio 2008. La version la plus récente des exemples est disponible sur ce site.
Recherchez les exemples sur l'ordinateur sur lequel Visual Studio est installé. Par défaut, les exemples et un fichier Readme sont installés sous lecteur:\Program Files\Microsoft Visual Studio 9.0\Samples\1036. Pour les versions Express de Visual Studio, tous les exemples sont disponibles en ligne.
Pour plus d'informations, consultez Recherche des fichiers d'exemple.
.
Note de sécurité : |
---|
Cet exemple de code est destiné à illustrer un concept ; il présente uniquement le code qui se rapporte spécifiquement à ce concept. Il est possible qu'il ne réponde pas aux exigences de sécurité d'un environnement spécifique, et ne doit pas être utilisé exactement comme indiqué. Nous vous recommandons d'ajouter du code de sécurité et de gestion des erreurs afin de renforcer la sécurité et la fiabilité de vos projets. Microsoft fournit cet exemple de code « EN L'ÉTAT » sans aucune garantie. |
Pour exécuter cet exemple
- Appuyez sur F5.
Démonstrations
Cette application simule un système d'enregistrement de véhicules, prenant en charge des automobiles, des bateaux et des bicyclettes.
L'application utilise une classe de base appelée Vehicle à partir de laquelle les classes Automobile, Boat et Bicycle sont dérivées. Chaque classe dérivée étend la classe de base à sa façon : en substituant des méthodes de la classe de base, en implémentant de nouvelles méthodes ou propriétés lui appartenant ou en remplaçant (en occultant) des membres de la classe de base. Il existe également une classe Friend appelée DepartmentOfMotorVehicles qui simule la lecture de données à partir d'une base de données et l'écriture de données sur cette dernière.
L'application illustre l'utilisation de ces instructions et modificateurs dans des classes et dans leurs membres :
Mot clé |
Utilisation |
---|---|
Utilisé sur Automobile, Boat et Bicycle pour indiquer que Vehicle est la classe de base. |
|
Utilisé sur la classe DepartmentOfMotorVehicles . Cette classe ne peut pas servir de classe de base. |
|
Utilisé sur la classe Vehicle . Seules les classes qui dérivent de Vehicle peuvent être instanciées. |
|
La méthode Register dans la classe Boat est surchargée pour ajouter un nombre maximal de passagers. |
|
Utilisé dans la classe Vehicle sur la propriété ID. Alors qu'elles sont implémentées dans la classe de base, les classes dérivées peuvent implémenter une autre version. |
|
Utilisé dans les trois classes dérivées sur la propriété CurrentValue, pour remplacer l'implémentation par défaut dans la classe de base. |
|
Utilisé dans les membres de classe Vehicle (ComputeRegistrationFee et Salary). Alors que ces membres ne sont pas implémentés dans Vehicle, ils doivent être implémentés dans les classes dérivées qui ne sont pas marquées MustInherit. |
|
Utilisé dans la classe Bicycle sur la méthode Register. |
|
Utilisé sur des classes et leurs membres pour indiquer qu'une classe ou un membre est disponible pour l'application cliente. |
|
Utilisé sur les champs de la classe Vehicle . Ces champs sont accessibles dans la classe Vehicle et les classes dérivées, mais ne sont pas accessibles aux applications clientes. |
|
Utilisé sur la classe DepartmentOfMotorVehicles . Cette classe est utilisée dans l'assembly, mais n'est pas accessible dans les applications clientes. |
|
Utilisé sur les champs de classe. Ces champs ne sont pas accessibles dans les applications clientes. |
|
Utilisé sur les méthodes dans la classe DepartmentOfMotorVehicles. Cela permet à la classe DepartmentOfMotorVehicles d'agir en tant que bibliothèque de fonctions. |