using System;
public class BankAccount {
   private double interestRate;
   private string owner;
   private decimal balance;
   public BankAccount(string owner) {
      this.interestRate = 0.0;
      this.owner = owner; 
      this.balance = 0.0M;
   }
   public BankAccount(string owner, double interestRate) {
      this.interestRate = interestRate;
      this.owner = owner; 
      this.balance = 0.0M;
   }
   public BankAccount(string owner, double interestRate, 
                      decimal balance) {
      this.interestRate = interestRate;
      this.owner = owner; 
      this.balance = balance;
   }   
   public decimal Balance () {
      return balance;
   }
   public void Withdraw (decimal amount) {
      balance -= amount;
   }
   public void Deposit (decimal amount) {
      balance += amount;
   }
   public void AddInterests() {
      balance = balance + balance * (decimal)interestRate;
   }    
   public override string ToString() {
      return owner + "'s account holds " +
            + balance + " kroner";
   }
}  |  |  
 
 
 
 
 
 
 
In order to be motivated for at better solution,
notice the amount of code replication in the
three constructors. All three constructors assign
to the same instance variables.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
   |