qq_26943373 2016-12-06 16:04 采纳率: 0%
浏览 910
已结题

入门!c#面向对象小白,密封方法题求改改,

namespace P5_5
{
class Program
{
static void Main(string[] args)
{
Vehicle v1 = new Train();
v1.Speak();
Console.WriteLine("行驶1000公里需{0}小时",v1.Run(1000));
v1=new Truck(16,24);
v1.Speak();
Console.WriteLine("行驶1000公里需{0}小时",v1.Run(1000));
}
}
public abstract class Vehicle
{
private float speed;
public float Speed
{
get { return speed; }
}
public virtual float Run(float distance)
{
return distance / speed;

    }

将P5_5例题中基类Automobile的Speak方法加修饰符sealed,请相应地修改程序。

    public   abstract void Speak();
    public Vehicle(float speed)
    {
        this.speed = speed;
    }
}
public class Train : Vehicle
{
    public Train()
        : base(160)
    { }
    public override void Speak()
    {
        Console.WriteLine("呜......");
    }
}
public abstract   class Automobile : Vehicle 
{
    public Automobile(float speed) : base(speed)
    { }
    public sealed  override abstract   void Speak();

}
public class Truck:Automobile 
{
    private float weight;
    public float Weight
    {
        get{return weight ;}
    }
    private float load;
    public float Load
    {
        get{return load;}
    }
    public Truck(int weight,int load):base(50)
    {
        this.weight=weight;
        this.load=load;
    }
    public override float  Run(float distance)
    {
        return (1+load/Weight/2)*base.Run(distance);
    }
    public  override  void  Speak()
    {
       Console.WriteLine ("叭......叭......");
    }
}

}

  • 写回答

1条回答 默认 最新

  • threenewbee 2016-12-06 16:14
    关注
     加修饰符sealed后派生类不能再用override了
    
    public  new  void  Speak()
        {
           Console.WriteLine ("叭......叭......");
        }
    
    v1=new Truck(16,24);
    v1.Speak();
    ->
    v1=new Truck(16,24);
    (v1 as Truck).Speak();
    
    评论

报告相同问题?

悬赏问题

  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值