幻光若迷 2021-06-11 09:40 采纳率: 100%
浏览 67
已采纳

怎么创建类,编写方法和继承啊?

用c#程序建立一个汽车Auto类,包括轮胎个数、汽车颜色、车身重量、速度等属性,并通过不同的构造方法创建实例,要求汽车能够启动、加速、减速、停车。再定义一个小汽车类Car继承Auto,并添加空调、CD等成员变量,重写加速、减速的方法,增加显示汽车当前状态的输出方法(输出基本信息和行驶状态,如颜色、车重、当前速度)。在Main()方法中、分别实例化这两个子类,然后分别调用启动、加速和减速方法,并输出当前状况。
 

  • 写回答

3条回答 默认 最新

  • CSDN专家-showbo 2021-06-11 09:46
    关注

    这样? 帮助到你可以点击采纳吗,谢谢~~

    using System;
    namespace ConsoleApp1
    {
        class Auto
        {
            public bool started { get; set; }
            public int Tyres { get; set; }
            public string Color { get; set; }
            public double Weight { get; set; }
            public double Speed { get; set; }
            public void AddSpeed(double value) { this.Speed += value; }
            public void MinusSpeed(double value) { if (this.Speed >= value) this.Speed -= value; else this.Speed = 0; }
            public void Stop() { this.Speed = 0;this.started = false; }
            public void Start() { this.Speed = 1; this.started = true; }
        }
        class Car : Auto
        {
            public string Aircondition { get; set; }
            public string Cd { get; set; }
            public new void AddSpeed(double value) { this.Speed += value; }
            public new void MinusSpeed(double value) { if (this.Speed >= value) this.Speed -= value; else this.Speed = 0; }
            public void ShowState()
            {
                Console.WriteLine("状态:"+(this.started?"启动":"停止")+"\t轮胎数:"+Tyres + "\t颜色:" + Color + "\t重量:" + Weight + "吨\t速度:" + Speed );
            }
        }
        class Program
        {
            static void Main(string[] args)
            {
                var car = new Car { Tyres = 4, Color = "白色", Weight = 1.3, Speed = 0, Aircondition = "松下", Cd = "Sony" };
                car.Start();
                car.ShowState();
                car.AddSpeed(10);
                car.ShowState();
                car.AddSpeed(60);
                car.ShowState();
                car.MinusSpeed(30);
                car.ShowState();
                car.Stop();
                car.ShowState();
    
                Console.ReadKey();
    
            }
        }
    }
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算