定义一个车辆(Vehicle)基类,具有Speed、MaxSpeed、Weight等属性,具有Run、Stop等方法。以该类为基类派生出Bicycle、Car类,为两个派生类添加新的属性和方法,并重写基类的Run方法,并对该派生类的功能进行验证。
class Vehicle
{
public double speed;
public double Speed
{
get { return speed; }
set {
if ( value >= 0 )
{
speed = value ;
}
else
{
Console. WriteLine ( "此速度值不在正常范围!" ) ;
}
}
}
public double maxspeed;
public double Maxspeed
{
get { return maxspeed; }
set
{
if ( value >= 0 && value >= speed)
{
maxspeed = value ;
}
else
{
Console. WriteLine ( "此速度值不在正常范围!" ) ;
}
}
}
public double weight;
public double Weight
{
get { return weight; }
set {
if ( value > 0 )
{
weight = value ;
}
else
{
Console. WriteLine ( "此速体重不在正常范围!" ) ;
}
}
}
public virtual void Run ( )
{
Console. WriteLine ( "我开始跑了" ) ;
}
public void Stop ( )
{
Console. WriteLine ( "我停车了" ) ;
}
class Bicycle : Vehicle
{
public void PrintName ( )
{
string name;
Console. WriteLine ( "请输入我的姓名:" ) ;
name = Console. ReadLine ( ) ;
Console. WriteLine ( "请输入我的体重:" ) ;
Weight = double . Parse ( Console. ReadLine ( ) ) ;
Console. WriteLine ( "请输入我的当前时速:" ) ;
Speed = double . Parse ( Console. ReadLine ( ) ) ;
Console. WriteLine ( "请输入我的最高时速:" ) ;
Maxspeed = double . Parse ( Console. ReadLine ( ) ) ;
Console. WriteLine ( "我是自行车!我的名字叫" + name+ "!\n我的体重是" + Weight+ "!我的当前时速是" + speed+ "!我的最高时速是" + maxspeed+ "" ) ;
}
public override void Run ( )
{
Console. WriteLine ( "我跑起来了因为我是自行车有点慢!" ) ;
}
}
class Car : Vehicle
{
public void PrintName ( )
{
Console. WriteLine ( "我是汽车!" ) ;
}
}
static void Main ( string [ ] args)
{
Bicycle bicycle = new Bicycle ( ) ;
bicycle. Run ( ) ;
bicycle. PrintName ( ) ;
bicycle. Stop ( ) ;
Car car = new Car ( ) ;
car. PrintName ( ) ;
Console. ReadLine ( ) ;
}
}