Événements
Créer des applications intelligentes
17 mars, 21 h - 21 mars, 10 h
Rejoignez la série de rencontres pour créer des solutions IA évolutives basées sur des cas d’usage réels avec d’autres développeurs et experts.
S’inscrire maintenantCe navigateur n’est plus pris en charge.
Effectuez une mise à niveau vers Microsoft Edge pour tirer parti des dernières fonctionnalités, des mises à jour de sécurité et du support technique.
Un constructeur est une méthode appelée par le runtime lorsqu’une instance d’une classe ou d’un struct est créée. Une classe ou un struct peut avoir plusieurs constructeurs qui prennent différents arguments. Les constructeurs vous permettent de vous assurer que les instances du type sont valides lors de la création. Pour obtenir plus d’informations et d’exemples, consultez Constructeurs d’instances et Utilisation de constructeurs.
Il existe plusieurs actions qui font partie de l’initialisation d’une nouvelle instance. Les actions suivantes se produisent dans l’ordre suivant :
Les actions précédentes se produisent lorsqu’une instance est créée à l’aide de l’opérateur new
. Si une nouvelle instance d’un struct
est définie sur sa valeur default
, tous les champs d’instance sont définis sur 0. Les éléments d’un tableau sont définis sur leur valeur par défaut 0 ou null
lorsqu’un tableau est créé.
Le constructeur statique , le cas échéant, s’exécute avant l’une des actions du constructeur d’instance pour n’importe quelle instance du type. Le constructeur statique s’exécute au maximum une seule fois.
Un constructeur est une méthode portant le même nom que son type. Sa signature de méthode peut inclure un modificateur d’accès facultatif , le nom de la méthode et sa liste de paramètres ; il n’inclut pas de type de retour. L’exemple suivant montre le constructeur d’une classe nommée Person
.
public class Person
{
private string last;
private string first;
public Person(string lastName, string firstName)
{
last = lastName;
first = firstName;
}
// Remaining implementation of Person class.
}
Si un constructeur peut être implémenté comme une seule instruction, vous pouvez utiliser une membre de corps d’expression. L’exemple suivant définit une classe Location
dont le constructeur a un paramètre de chaîne unique nommé nom. La définition du corps d’expression affecte l’argument au champ locationName
.
public class Location
{
private string locationName;
public Location(string name) => Name = name;
public string Name
{
get => locationName;
set => locationName = value;
}
}
Si un type nécessite un paramètre pour créer une instance, vous pouvez utiliser un constructeur principal pour indiquer qu’un ou plusieurs paramètres sont nécessaires pour instancier le type, comme illustré dans l’exemple suivant :
public class LabelledContainer<T>(string label)
{
public string Label { get; } = label;
public required T Contents
{
get;
init;
}
}
Les exemples précédents montrent les constructeurs d’instances, qui initialisent un nouvel objet. Une classe ou un struct peut également déclarer un constructeur statique, qui initialise les membres statiques du type. Les constructeurs statiques sont sans paramètre. Si vous ne fournissez pas de constructeur statique pour initialiser des champs statiques, le compilateur C# initialise les champs statiques à leur valeur par défaut, comme indiqué dans la valeurs par défaut des types C# article.
L’exemple suivant utilise un constructeur statique pour initialiser un champ statique.
public class Adult : Person
{
private static int minimumAge;
public Adult(string lastName, string firstName) : base(lastName, firstName)
{ }
static Adult() => minimumAge = 18;
// Remaining implementation of Adult class.
}
Vous pouvez également définir un constructeur statique avec une définition de corps d’expression, comme l’illustre l’exemple suivant.
public class Child : Person
{
private static int maximumAge;
public Child(string lastName, string firstName) : base(lastName, firstName)
{ }
static Child() => maximumAge = 18;
// Remaining implementation of Child class.
}
Pour plus d’informations et d’exemples, consultez Constructeurs Statiques.
Commentaires sur .NET
.NET est un projet open source. Sélectionnez un lien pour fournir des commentaires :
Événements
Créer des applications intelligentes
17 mars, 21 h - 21 mars, 10 h
Rejoignez la série de rencontres pour créer des solutions IA évolutives basées sur des cas d’usage réels avec d’autres développeurs et experts.
S’inscrire maintenantEntrainement
Module
Get started with classes and objects in C# - Training
Learn how to create classes and instantiate objects that expose encapsulated field data by using class definitions, constructors, and the 'new' operator.
Documentation
En este ejemplo se muestra cómo se crea una instancia de una clase mediante el nuevo operador en C#. El constructor simple se invoca después de asignar memoria para el nuevo objeto.
operador new: creación e inicialización de una nueva instancia de un tipo - C# reference
El operador nuevo de C# se usa para crear opcionalmente una nueva instancia de un tipo.
En estos ejemplos se muestra el uso de propiedades en C#. Vea cómo los descriptores de acceso get y set implementan el acceso de lectura y escritura, y obtenga información sobre los usos de las propiedades.