public string OwnerName {get; set;}
public double Balance {get; set;}
protected string AccountID {get; set;}
private int OpeningYear {get; set;}
public BankAccount(string o, double b, string a, int y)
public void PrintOwnerName()
Console.WriteLine("Owner name: " + OwnerName);
public virtual void ShowBalance()
Console.WriteLine("Balance: " + Balance);
public class CheckingAccount : BankAccount
public int WithdrawLimit {get; set;}
public CheckingAccount() { }
public CheckingAccount(string o, double b, string a, int y, int w) : base(o, b, a, y)
public new void PrintOwnerName()
Console.WriteLine("CheckingAccount OwnerName: "+ OwnerName);
public override void ShowBalance()
Console.WriteLine("CheckingAccount Balance: "+ Balance);
public static void Main()
CheckingAccount ca = new CheckingAccount("Mary", 5000, "A12345", 2012, 6);
Console.WriteLine("======================");
BankAccount ba = new CheckingAccount("John", 3000, "B6789", 2018, 6);