Exercices C#

Créer un compte bancaire encapsulé en C#

Dans cette leçon, vous allez protéger le solde d'un compte avec une propriété en lecture seule depuis l'extérieur et une méthode de dépôt contrôlée.

Introduction

Cet exercice applique l'encapsulation : au lieu de laisser l'extérieur modifier directement le solde, la classe ne propose que des opérations valides, comme le dépôt. Les règles métier, par exemple l'interdiction de déposer un montant négatif, sont ainsi toujours respectées.

La propriété Balance a un private set : de l'extérieur, on peut seulement la lire, pas lui affecter de valeur. La méthode Deposit vérifie que le montant est supérieur à 0, sinon elle lève une ArgumentOutOfRangeException. Le compte est ouvert avec 100, on y dépose 50, le solde affiché est donc 150.

Exemple C# exécutable

C#
Exécuter le code →
Program.cs
using System;
class BankAccount(decimal opening)
{
    public decimal Balance { get; private set; } = opening;
    public void Deposit(decimal amount)
    {
        if (amount <= 0) throw new ArgumentOutOfRangeException(nameof(amount));
        Balance += amount;
    }
}
class Program
{
    static void Main() { var account = new BankAccount(100); account.Deposit(50); Console.WriteLine(account.Balance); }
}
Résultat de l’exécution
150

S'entraîner avec le débogueur

Placez un point d'arrêt sur une affectation ou une condition importante, cliquez sur Debug et inspectez les valeurs locales avant de passer à la ligne suivante.

S'entraîner avec un défi

Utilisez le contenu de cette leçon pour résoudre un vrai problème. Chaque défi s'exécute dans le navigateur, avec des tests instantanés et une revue par l'IA.

Tous les défis