求大神解答,用c#编,在线等

1.请编写一个Helper类,里面有一个静态方法(average(int[]arr)),然后在测试代码中调用这个方法,用来求出一个数组中所有数的平均值。2.编写三个类:水... 1. 请编写一个Helper类,里面有一个静态方法(average(int[] arr)),然后在测试代码中调用这个方法,用来求出一个数组中所有数的平均值。
2. 编写三个类:水果(Fruit)、苹果(Apple)和桔子(Orange)。
a) 苹果和和桔子类都是水果类的子类;
b) 为三个类设计合理的字段和方法,并在子类中用new隐藏父类的一个方法;
c) 每个类都要设计带参数的构造方法,用于初始化字段的值;
d) 通过控制台或Windows界面应用程序,编写测试代码。
3. 编写两个类:Vehicle(运输工具)类和Car(轿车)类。
a) Vehicle类是Car类的父类;
b) Vehicle类中有一个虚方法Turn()(转弯),Car类中重写这个方法;
c) 通过控制台或Windows界面应用程序,编写测试代码。
展开
 我来答
Damon_lan
推荐于2017-12-16 · TA获得超过2054个赞
知道小有建树答主
回答量:415
采纳率:0%
帮助的人:169万
展开全部

这是这题目是考c#的两个概念,隐藏和重写

(1)隐藏

当分别位于父类和子类的两个方法完全一样时,调用哪个方法由对象变量的类型决定。

(2)重写

将父类方法定义为虚方法,子类重写同名方法后,通过父类变量调用哪个方法由对象变量引用的真实对象决定,而与变量自身所属的类型无关。


第一题:请编写一个Helper类,里面有一个静态方法(average(int[] arr)),然后在测试代码中调用这个方法,用来求出一个数组中所有数的平均值。

  class Helper
    {
        public static double Average(int[] arr)
        {

            return arr.Average();
        }
    }

测试:

//测试!28
            int[] arrs = { 1, 2, 3, 4, 5, 6, 7 };
            Console.WriteLine(Helper.Average(arrs));

第二题:

2. 编写三个类:水果(Fruit)、苹果(Apple)和桔子(Orange)。
a) 苹果和和桔子类都是水果类的子类;
b) 为三个类设计合理的字段和方法,并在子类中用new隐藏父类的一个方法;
c) 每个类都要设计带参数的构造方法,用于初始化字段的值;
d) 通过控制台或Windows界面应用程序,编写测试代码。

    public class Fruit
    {
        public string Name { get; set; }
        public void TestMethod()
        {
            Console.WriteLine("我是父类方法");
        }
        public void EatFruit()
        {
            Console.WriteLine("开始吃 " + this.Name);
        }
    }
    public class Orange : Fruit
    {
        public Orange(string name)
        {
            this.Name = name;
        }
    }
    public class Apple : Fruit
    {
        public Apple(string name)
        {
            this.Name = name;
        }
        public new void TestMethod()
        {
            Console.WriteLine("我是子类 Apple的方法");
        }
    }

测试:

static void Main(string[] args)
        {
            //      编写三个类:水果(Fruit)、苹果(Apple)和桔子(Orange)。
            //a)    苹果和和桔子类都是水果类的子类;
            //b)    为三个类设计合理的字段和方法,并在子类中用new隐藏父类的一个方法;
            //c)    每个类都要设计带参数的构造方法,用于初始化字段的值;
            //d)    通过控制台或Windows界面应用程序,编写测试代码。

            Apple apple = new Apple("苹果");
            apple.TestMethod();

            Orange orange = new Orange("橘子");
            orange.TestMethod();

        }

第三题:

public class Vehicle
    {
        public string Name { set; get; }

        public string Location { set; get; }

        public double Price { set; get; }

        public virtual void Turn()
        {
            Console.WriteLine("我左转。。");
        }
    }
    public class Car : Vehicle
    {
        public override void Turn()
        {
            Console.WriteLine("其实我右转。。");
        }
    }

测试:

  static void Main(string[] args)
        {
            //      编写两个类:Vehicle(运输工具)类和Car(轿车)类。
            //a)    Vehicle类是Car类的父类;
            //b)    Vehicle类中有一个虚方法Turn()(转弯),Car类中重写这个方法;
            //c)    通过控制台或Windows界面应用程序,编写测试代码。

            Vehicle v = new Car();
            v.Turn();

        }
MarsCode
2024-08-21 广告
```c#include int main() { int a, b; printf("请输入两个整数: "); scanf("%d %d", &a, &b); int sum = a + b; printf(... 点击进入详情页
本回答由MarsCode提供
内裤最大功能
2015-05-24 · TA获得超过3105个赞
知道大有可为答主
回答量:3201
采纳率:79%
帮助的人:1275万
展开全部
晚上吧,10点以后如果没人我就写。
追问
好的,尽量能快点。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式