Syntaxes VB.Net/C#
VB.Net | C# | Explications |
---|---|---|
Modificateurs d’accès : | ||
Public | public | L’accès n’est pas limité. |
Protected | protected | L’accès est restreint à la classe conteneur ou aux types dérivés de la classe conteneur. |
Friend | internal | L’accès est restreint à l’assembly conteneur. |
Protected Friend | protected internal | L’accès est restreint à l’assembly conteneur OU aux types dérivés de la classe conteneur. |
Private | private | L’accès est restreint au type conteneur. |
Shared | static | Spécifie qu’un membre ou une méthode est commune à toutes les instances d’une classe. Pas besoin d’une instance de classe pour invoquer le membre ou la méthode. |
Static | [Pas de Correspondance] | Spécifie qu’une variable locale continue d’exister et conserve sa valeur après l’exécution de la méthode dans laquelle elle est déclarée. |
Héritage et polymorphisme : | ||
Class MyClass Inherits Object Implements IComponent |
class MyClass : Object, IComponent | La classe MyClass hérite de la classe Object (un seule héritage possible pour une classe) et implémente l’interface IComponent (plusieurs implémentation possible pour une classe). |
NotInheritable | sealed | Spécifie qu’une classe ne peut être héritée. |
NotOverridable | sealed | Spécifie qu’une méthode ne peut être surchargée dans une classe héritée. |
MustInherit | abstract | Spécifie qu’une classe ne peut être instanciée, et doit être héritée. |
MustOverride | abstract | Spécifie qu’une méthode doit être réimplémentée si la classe est héritée. |
Overloads | [Non Requis] | Spécifie qu’une méthode surcharge une autre méthode de la même classe. |
Overrides | override | Spécifie qu’un membre ou une méthode surcharge le membre ou la méthode correspondante dans la classe de base. |
Me | this | Référence à l’objet courant. |
MyBase | base | Référence à la classe de base. |
Déclarations (méthodes, propriétés, variables, etc…) : | ||
Sub New() | MyClass() | Déclaration du constructeur de la classe MyClass. |
Sub Finalize() | ~MyClass() | Déclaration du destructeur de la classe MyClass. |
Function MyFunc(ByVal i As Int16) As Int32 End Function |
Int32 MyFunc(Int16 i) { } |
Déclaration d’une fonction MyFunc prenant un Int16 en paramètre et renvoyant un Int32. |
Sub MyProc(ByRef i As Integer) End Sub |
void MyProc(ref int i) { } |
Déclaration d’une procédure MyProc prenant un entier en paramètre. |
ByVal ByRef |
[Non Requis] ref |
Passe un paramètre par valeur. Passe un paramètre par référence. |
Property MyProp() As String Get Return Me._myProp End Get Set(value As String) Me._myProp = value End Set End Property |
String MyProp { get { return this._myProp; } set { this._myProp = value; } } |
Déclaration d’une propriété MyProp de type String, en lecture-écriture. |
ReadOnly Property MyProp() As String Get Return Me._myProp End Get End Property |
String MyProp { get { return this._myProp; } } |
Déclaration d’une propriété MyProp de type String, en lecture seule. |
WriteOnly Property MyProp() As String Set(value As String) Me._myProp = value End Set End Property |
String MyProp { set { this._myProp = value; } } |
Déclaration d’une propriété MyProp de type String, en écriture seulement. |
Dim i As Integer = 0 | int i = 0; | Déclaration d’une variable i de type Integer, initialisée à 0. |
Dim arr(5) As String = 6 items (de 0 à 5) |
String[] arr = new String[5]; = 5 items (de 0 à 4) |
Déclaration et initialisation d’un tableau de chaînes. |
Structure MyStruct End Structure |
struct MyStruct { } |
Déclaration de structure. |
Enum Semaine Lundi = 0 Mardi Mercredi End Enum |
enum Semaine { Lundi = 0, Mardi, Mercredi } |
Déclaration d’une énumération. |
Const | const readonly |
Déclaration d’une constante. |
Opérateurs : | ||
= < <= > >= <> | == < <= > >= != | Opérateurs de comparaison. |
+ – * / Mod \ ^ |
+ – * / % / Math.Pow(x, y) |
Opérateurs arithmétiques. Modulo (reste de la division entière). Division d’entiers. Puissance / Exposant. |
= += -= *= /= \= ^= <<= >>= &= | = += -= *= /= %= ++ – &= |= ^= <<= >>= |
Opérateurs d’assignation. |
And Or Xor Not << >> | & | ^ ~ << >> | Opérateurs de bits. |
AndAlso OrElse And Or Xor Not | && || & | ^ ! | Opérateurs logiques. |
& | + | Concaténation de chaînes. |
Conversions, Cast, Types… : | ||
CType(Var, Type) | (Type)Var | Conversion d’une Variable (type valeur) dans un autre Type. Génère une exception en cas d’erreur. |
CType(Objet, Type) | (Type)Objet | Conversion d’un Objet (type référence) dans un autre Type. Génère une exception en cas d’erreur. |
DirectCast(Var, Type) | (Type)Var | Conversion d’une variable (type valeur) dans un autre Type. Les deux types concernés doivent avoir une relation d’héritage. Génère une exception en cas d’erreur. |
DirectCast(Objet, Type) | (Type)Objet | Conversion d’un Objet (type référence) dans un autre Type. Les deux types concernés doivent avoir une relation d’héritage ou d’implémentation. Génère une exception en cas d’erreur. |
TryCast(Objet, Type) | Objet as Type | Conversion d’un Objet (type référence) dans un autre Type. Les deux types concernés doivent avoir une relation d’héritage ou d’implémentation. Renvoie une valeur nulle en cas d’erreur. |
Dim var As Nullable(Of DateTime) = Nothing | DateTime? var = null; | Permet d’affecter une valeur nulle à une variable de type valeur. |