Multiple Constructor version without duplicating a lot of the constructor code : Constructor « Class « C# / CSharp Tutorial






using System;
public class BankAccount {
    static int nNextAccountNumber = 1000;

    int nAccountNumber;
    double dBalance;

    public BankAccount() : this(0, 0) { }

    public BankAccount(double dInitialBalance) :
        this(0, dInitialBalance) { }

    public BankAccount(int nInitialAccountNumber,
                       double dInitialBalance) {
        if (nInitialAccountNumber <= 0) {
            nInitialAccountNumber = ++nNextAccountNumber;
        }
        nAccountNumber = nInitialAccountNumber;
        if (dInitialBalance < 0) {
            dInitialBalance = 0;
        }
        dBalance = dInitialBalance;
    }

    public string GetString() {
        return String.Format("#{0} = {1:N}",
                              nAccountNumber, dBalance);
    }
}








7.13.Constructor
7.13.1.Add constructor to class
7.13.2.A parameterized constructor
7.13.3.Add a constructor with three parameters
7.13.4.An overloaded constructor.
7.13.5.Multiple Constructor version without duplicating a lot of the constructor code
7.13.6.Constuctor hidden
7.13.7.Copy constructor
7.13.8.Invoke a constructor through this
7.13.9.Use a static constructor.
7.13.10.Add a constructor to Triangle.
7.13.11.Private copy constructor used when making a copy of this object
7.13.12.Use Constructor to initialize member variables
7.13.13.Class without default constructor
7.13.14.Throw your own exception from class constructor