QCM sur VB.NET : Questions à Choix Multiples
Voici un QCM destiné à tester vos connaissances sur le langage VB.NET. Chaque question propose quatre réponses possibles. Une seule réponse est correcte.
Question 1 : Quelle est l’extension d’un fichier projet VB.NET ?
.csproj
.vbproj
.projvb
.vbfile
Réponse correcte : 2. .vbproj
Question 2 : Quelle est la syntaxe correcte pour déclarer une variable entière ?
Dim x As String = 5
Dim x As Integer = 5
Dim Integer x = 5
Integer x = 5
Réponse correcte : 2. Dim x As Integer = 5
Question 3 : Quel mot-clé est utilisé pour gérer les erreurs en VB.NET ?
Try...Catch
Error...Catch
Try...Finally
Catch...Throw
Réponse correcte : 1. Try...Catch
Question 4 : Quelle méthode du Console
est utilisée pour afficher une ligne de texte ?
Console.Write()
Console.Display()
Console.WriteLine()
Console.Print()
Réponse correcte : 3. Console.WriteLine()
Question 5 : Quel est le type de valeur par défaut d’une variable Boolean
non initialisée ?
True
False
Nothing
0
Réponse correcte : 2. False
Question 6 : Quelle est la portée d’une variable déclarée avec le mot-clé Static
dans une méthode ?
- Globale dans tout le projet.
- Locale à la méthode, mais conserve sa valeur entre les appels.
- Accessible uniquement à l’intérieur de la classe.
- Accessible à toutes les méthodes publiques.
Réponse correcte : 2. Locale à la méthode, mais conserve sa valeur entre les appels.
Question 7 : Quelle est la valeur de x
après l’exécution du code suivant ?
Dim x As Integer = 10
x += 5
10
5
15
0
Réponse correcte : 3. 15
Question 8 : Quelle est la différence entre Function
et Sub
en VB.NET ?
Sub
retourne une valeur, tandis queFunction
ne retourne rien.Function
retourne une valeur, tandis queSub
ne retourne rien.- Les deux retournent une valeur.
- Les deux ne retournent aucune valeur.
Réponse correcte : 2. Function
retourne une valeur, tandis que Sub
ne retourne rien.
Question 9 : Quel mot-clé est utilisé pour déclarer une classe ?
New
Module
Class
Declare
Réponse correcte : 3. Class
Question 10 : Quel est le mot-clé utilisé pour hériter d’une classe en VB.NET ?
Inherits
Implements
Extends
Derives
Réponse correcte : 1. Inherits
Question 11 : Que signifie le mot-clé Me
en VB.NET ?
- Référence l’objet actuel.
- Référence l’instance de classe parente.
- Fait référence à une méthode externe.
- Référence une variable globale.
Réponse correcte : 1. Référence l’objet actuel.
Question 12 : Quel est le mot-clé utilisé pour terminer une boucle For
?
EndFor
End
Next
Break
Réponse correcte : 3. Next
Question 13 : Comment déclare-t-on une constante en VB.NET ?
Dim Pi As Constant = 3.14
Const Pi As Double = 3.14
Constant Pi As Double = 3.14
Static Pi As Constant = 3.14
Réponse correcte : 2. Const Pi As Double = 3.14
Question 14 : Que fait le mot-clé Finally
dans un bloc Try...Catch
?
- Exécute du code seulement si une erreur est levée.
- Exécute du code après le bloc
Catch
, qu’une exception soit levée ou non. - Termine immédiatement le programme.
- Réinitialise la variable d’erreur.
Réponse correcte : 2. Exécute du code après le bloc Catch
, qu’une exception soit levée ou non.
Question 15 : Que fait Option Strict On
en VB.NET ?
- Autorise les conversions implicites.
- Empêche les conversions implicites.
- Désactive les options de compilation strictes.
- Active les erreurs de style de code.
Réponse correcte : 2. Empêche les conversions implicites.
Ce QCM VB.NET couvre plusieurs aspects importants de VB.NET, tels que la syntaxe, la gestion des erreurs, la portée des variables, et l’utilisation des classes. Il est conçu pour tester les connaissances des débutants comme des développeurs expérimentés.
Voici un exemple de suite pour continuer l’apprentissage, avec un QCM avancé sur VB.NET :
QCM Avancé : VB.NET
Question 16 : Quel est le mot-clé utilisé pour implémenter une interface en VB.NET ?
Inherits
Implements
Interface
Extends
Réponse correcte : 2. Implements
Question 17 : Quelle est la différence entre Shared
et Instance
en VB.NET ?
- Les membres
Shared
appartiennent à l’instance, tandis que les membresInstance
appartiennent à la classe. - Les membres
Instance
appartiennent à l’instance, tandis que les membresShared
appartiennent à la classe. - Les deux appartiennent toujours à la classe.
- Les deux appartiennent toujours à l’instance.
Réponse correcte : 2. Les membres Instance
appartiennent à l’instance, tandis que les membres Shared
appartiennent à la classe.
Question 18 : Que se passe-t-il si vous essayez d’assigner une valeur Nothing
à une variable Integer
?
- La variable contiendra 0.
- La variable contiendra
Nothing
. - Une exception sera levée.
- La variable contiendra une valeur aléatoire.
Réponse correcte : 1. La variable contiendra 0.
Question 19 : Comment déclare-t-on une propriété avec des accesseurs personnalisés en VB.NET ?
- En utilisant
Property
avecGet
etSet
. - En utilisant
Function
etSub
. - En utilisant uniquement
Dim
. - En utilisant
Declare
.
Réponse correcte : 1. En utilisant Property
avec Get
et Set
.
Exemple :
Private _nom As String
Public Property Nom As String
Get
Return _nom
End Get
Set(value As String)
_nom = value
End Set
End Property
Question 20 : Quelle est la sortie de ce code ?
Dim a As Integer = 5
Dim b As Integer = 2
Dim c As Double = a / b
Console.WriteLine(c)
2
2.5
2.0
- Une erreur de compilation.
Réponse correcte : 2. 2.5
Explication : En VB.NET, l’opérateur /
effectue une division réelle, même si les deux opérandes sont des entiers.
Question 21 : Quel est l’ordre des modificateurs d’accès en termes de visibilité croissante ?
Private
,Protected
,Public
,Friend
Public
,Protected
,Private
,Friend
Private
,Friend
,Protected
,Public
Protected
,Friend
,Private
,Public
Réponse correcte : 3. Private
, Friend
, Protected
, Public
Question 22 : Quelle est la différence entre Friend
et Protected Friend
?
Friend
permet l’accès dans le même module, tandis queProtected Friend
ajoute l’accès aux classes dérivées.Friend
permet l’accès dans toutes les classes dérivées, tandis queProtected Friend
limite l’accès au module.Friend
est une forme avancée deProtected
.- Il n’y a aucune différence.
Réponse correcte : 1. Friend
permet l’accès dans le même module, tandis que Protected Friend
ajoute l’accès aux classes dérivées.
Question 23 : Quel mot-clé est utilisé pour empêcher qu’une classe ne soit héritée ?
Abstract
NotInheritable
Static
Sealed
Réponse correcte : 2. NotInheritable
Question 24 : Que fait le mot-clé Overrides
en VB.NET ?
- Empêche qu’une méthode ne soit surchargée.
- Permet de remplacer une méthode dans une classe dérivée.
- Définit une nouvelle méthode indépendante.
- Ajoute une méthode sans en supprimer l’originale.
Réponse correcte : 2. Permet de remplacer une méthode dans une classe dérivée.
Exemple :
Public Class BaseClass
Public Overridable Sub Afficher()
Console.WriteLine("BaseClass")
End Sub
End Class
Public Class DerivedClass
Inherits BaseClass
Public Overrides Sub Afficher()
Console.WriteLine("DerivedClass")
End Sub
End Class
Question 25 : Que fait l’instruction Option Explicit On
?
- Autorise l’utilisation de variables sans déclaration préalable.
- Rend obligatoire la déclaration des variables avant leur utilisation.
- Autorise les conversions de type implicites.
- Désactive les vérifications des erreurs.
Réponse correcte : 2. Rend obligatoire la déclaration des variables avant leur utilisation.
Question 26 : Dans quel cas utilisez-vous MyBase
?
- Pour appeler une méthode ou une propriété de la classe parente.
- Pour appeler une méthode ou une propriété de l’objet actuel.
- Pour appeler une méthode ou une propriété statique.
- Pour appeler une méthode ou une propriété externe.
Réponse correcte : 1. Pour appeler une méthode ou une propriété de la classe parente.
Exemple :
Public Class Parent
Public Overridable Sub Afficher()
Console.WriteLine("Parent")
End Sub
End Class
Public Class Enfant
Inherits Parent
Public Overrides Sub Afficher()
MyBase.Afficher()
Console.WriteLine("Enfant")
End Sub
End Class
Question 27 : Quelle est la différence entre CType
et DirectCast
?
CType
est plus strict queDirectCast
.DirectCast
est plus rapide mais nécessite une conversion explicite entre types compatibles.DirectCast
peut convertir des types non compatibles.- Il n’y a aucune différence.
Réponse correcte : 2. DirectCast
est plus rapide mais nécessite une conversion explicite entre types compatibles.
Exemple :
Dim obj As Object = "Hello"
Dim str As String = DirectCast(obj, String) ' Fonctionne
Dim num As Integer = CType(obj, Integer) ' Provoque une exception
Question 28 : Que signifie Nothing
en VB.NET ?
- Une valeur vide.
- Un objet non initialisé.
- Une référence nulle.
- Toutes les réponses ci-dessus.
Réponse correcte : 4. Toutes les réponses ci-dessus.