Champs, propriétés automatiques et initialiseurs d’objets
Définissez des champs et des propriétés automatiques, puis créez des objets avec des initialiseurs d’objets concis.
Champs, propriétés automatiques et initialiseurs d’objets est une leçon C# Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 3. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage C# Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours C# Academy comprend 3 leçons au total.
Présentation générale des classes
Objectif : créer des classes simples.
- Champs contenant les données brutes
- Propriétés automatiques exposant les données proprement
- Initialisateurs d’objets définissant les valeurs lors de la création
Champs d’une classe
Champs sont des variables à l’intérieur d’une classe. Pour les données publiques, les properties sont plus sûres.
using System;
// Fields store raw data inside a class
public class Player
{
public string name; // field (usually prefer properties for public APIs)
public int level;
}
public class Program
{
public static void Main(string[] args)
{
Player p = new Player();
p.name = "Ada";
p.level = 1;
Console.WriteLine("Player " + p.name + " level " + p.level);
}
}
Propriétés automatiques
Les propriétés automatiques exposent les données via get/set sans écrire de champ. Vous pouvez définir des valeurs par défaut simples.
using System;
// Auto-properties generate a hidden backing field
public class Book
{
public string Title { get; set; }
public string Author { get; set; }
public int Pages { get; set; } = 0; // auto-property initializer (C# 6)
}
public class Program
{
public static void Main(string[] args)
{
Book b = new Book();
b.Title = "Clean Code";
b.Author = "Robert C. Martin";
b.Pages = 464;
Console.WriteLine(b.Title + " by " + b.Author + " (" + b.Pages + " pages)");
}
}
Initialisateurs d’objets
Les initialisateurs d’objets définissent les properties lors de la création, ce qui rend le code court et clair.
using System;
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
public class Program
{
public static void Main(string[] args)
{
// Object initializer calls set-accessors after construction
Person p = new Person { Name = "Alan", Age = 30 };
Console.WriteLine(p.Name + " (" + p.Age + ")");
}
}
Champs et properties
Recommandation :
- Utilisez des fields privés pour le stockage interne.
- Exposez des properties publiques afin de pouvoir ajouter une validation plus tard sans modifier le code appelant.
- Conservez des noms clairs et simples.
Fields et properties ensemble
Associez un field privé à une property pour contrôler les écritures (invariants simples).
using System;
// Private fields + public properties pattern
public class Product
{
private int _stock; // field (internal storage)
public string Name { get; set; } // property (public API)
public int Stock // property with simple guard
{
get { return _stock; }
set
{
if (value < 0) value = 0; // simple safety for beginners
_stock = value;
}
}
}
public class Program
{
public static void Main(string[] args)
{
Product p = new Product { Name = "Pen", Stock = 5 };
p.Stock = -3; // setter clamps to 0
Console.WriteLine(p.Name + " stock = " + p.Stock);
}
}
Concept de propriété automatique
Récapitulatif
Récapitulatif : définissez les données avec des fields et exposez-les via des properties automatiques. Utilisez les initialisateurs d’objets pour définir les valeurs lors de la création.
Questions Fréquemment Posées
La leçon « Champs, propriétés automatiques et initialiseurs d’objets » est-elle gratuite ?
Oui — le texte complet de « Champs, propriétés automatiques et initialiseurs d’objets » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours C# Academy, passe à CoddyKit PRO. Le cours C# Academy comprend 3 leçons au total.
Qu'est-ce que j'apprendrai dans « Champs, propriétés automatiques et initialiseurs d’objets » ?
Définissez des champs et des propriétés automatiques, puis créez des objets avec des initialiseurs d’objets concis. Tu pratiques C# Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer C# Academy ?
Aucune expérience préalable n'est requise. C# Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 3.
Combien de temps prend la leçon « Champs, propriétés automatiques et initialiseurs d’objets » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon C# Academy ?
Oui. Chaque leçon C# Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Champs, propriétés automatiques et initialiseurs d’objets
- Constructeurs et membres statiques
- Encapsulation et invariants