C#语言学习--基础部分(二一) Inherit Demo
Programm.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Vehicles
{
class Program
{
static void DoWork()
{
Console.WriteLine("Journey by airplane");
Airplane myPlane = new Airplane();
myPlane.StartEngine("Contact");
myPlane.TakeOff();
myPlane.Drive();
myPlane.Land();
myPlane.StopEngine("Whirr");
Console.WriteLine("\nJonery by car:");
Car myCar = new Car();
myCar.StartEngine("Brm Brm");
myCar.Accelerate();
myCar.Drive();
myCar.Brake();
myCar.StopEngine("Phut Phut");
Console.WriteLine("\nTesting polymorphism");
Vehicles v = myCar; //父类引用,引用子类对像
v.Drive(); //调用子类的方法(override)
v = myPlane;
v.Drive();
}
static void Main(string[] args)
{
try
{
DoWork();
}
catch (Exception ex)
{
Console.WriteLine("Exception:{0}",ex.Message);
}
}
}
}
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Vehicles
{
class Program
{
static void DoWork()
{
Console.WriteLine("Journey by airplane");
Airplane myPlane = new Airplane();
myPlane.StartEngine("Contact");
myPlane.TakeOff();
myPlane.Drive();
myPlane.Land();
myPlane.StopEngine("Whirr");
Console.WriteLine("\nJonery by car:");
Car myCar = new Car();
myCar.StartEngine("Brm Brm");
myCar.Accelerate();
myCar.Drive();
myCar.Brake();
myCar.StopEngine("Phut Phut");
Console.WriteLine("\nTesting polymorphism");
Vehicles v = myCar; //父类引用,引用子类对像
v.Drive(); //调用子类的方法(override)
v = myPlane;
v.Drive();
}
static void Main(string[] args)
{
try
{
DoWork();
}
catch (Exception ex)
{
Console.WriteLine("Exception:{0}",ex.Message);
}
}
}
}
Vehicles.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Vehicles
{
class Vehicles
{
public void StartEngine(string noiseToMakeWhenStarting)
{
Console.WriteLine("Starting engine:{0}",noiseToMakeWhenStarting);
}
public void StopEngine(string noiseToMakeWhenStopping)
{
Console.WriteLine("Stopping engine:{0}",noiseToMakeWhenStopping);
}
public virtual void Drive()
{
Console.WriteLine("Default implementation of the Drive method");
}
}
}
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Vehicles
{
class Vehicles
{
public void StartEngine(string noiseToMakeWhenStarting)
{
Console.WriteLine("Starting engine:{0}",noiseToMakeWhenStarting);
}
public void StopEngine(string noiseToMakeWhenStopping)
{
Console.WriteLine("Stopping engine:{0}",noiseToMakeWhenStopping);
}
public virtual void Drive()
{
Console.WriteLine("Default implementation of the Drive method");
}
}
}
Airplane.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Vehicles
{
class Airplane:Vehicles
{
public void TakeOff()
{
Console.WriteLine("Takeing ff");
}
public void Land()
{
Console.WriteLine("Landing");
}
public override void Drive()
{
Console.WriteLine("Flying");
}
}
}
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Vehicles
{
class Airplane:Vehicles
{
public void TakeOff()
{
Console.WriteLine("Takeing ff");
}
public void Land()
{
Console.WriteLine("Landing");
}
public override void Drive()
{
Console.WriteLine("Flying");
}
}
}
Car.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Vehicles
{
class Car:Vehicles
{
public void Accelerate()
{
Console.WriteLine("Accelerating");
}
public void Brake()
{
Console.WriteLine("Braking");
}
public override void Drive()
{
Console.WriteLine("Motoring");
}
}
}
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Vehicles
{
class Car:Vehicles
{
public void Accelerate()
{
Console.WriteLine("Accelerating");
}
public void Brake()
{
Console.WriteLine("Braking");
}
public override void Drive()
{
Console.WriteLine("Motoring");
}
}
}