2. 方法重写

方法重写:

  定义:重写方法用相同的签名重写所继承的方法,即具有相同的方法名、返回类型和参数表。

 1 /**
 2  * 
 3  *  1、设计一个基类,在其中创建方法 MConvert ,
 4  *  这个方法接受一个代表公里数的参数,将其转换为对等的英里数之后,
 5  *  然后创建一个继承此类的子类,增加可将输入的公斤数转换为磅的新方法 KConvert , 
 6  *  最后产生子类的实例对象, 测试这两个功能。
 7  *  提示信息:1千米(公里) = 0.62英里; 1千克(公斤) = 2.2磅 
 8  */
 9 using System;
10 using System.Collections.Generic;
11 using System.Linq;
12 using System.Text;
13 using System.Threading.Tasks;
14 
15 namespace SecondAssignment
16 {
17     class Program
18     {
19         static void Main(string[] args)
20         {
21             //产生子类的实例对象
22             Child c = new Child();
23             c.KConvert(2);
24             Father f = new Father();
25             f.MConvert(1);
26             Console.ReadKey();
27         }
28     }
29     class Father
30     {
31         //MConvert 方法
32         public void MConvert(double Km)
33         {
34             double mile = Km * 0.62;
35             Console.WriteLine("公里转英里:"+mile);
36         }
37     }
38     class Child : Father
39     {
40         //KConvert方法。公斤转为磅
41         public void KConvert(double Kg)
42         {
43             double pound = Kg * 2.2;
44             Console.WriteLine("公斤转为磅:"+pound);
45         }
46     }
47 }

 

 1 /**
 2  *  2、设计一个基类,在其中创建方法 MConvert,
 3  *  这个方法接受一个代表公里数的参数,将其转换为对等的英里数之后,
 4  *  然后创建一个继承此类的子类,
 5  *  提示信息:1千米(公里) = 0.62英里 
 6  *  将其中的 MConvert 方法声明为 virtual, 
 7  *  然后在子类中进行重写,以其所接受的参数为正方形边长,转换为英里后计算其面积。
 8  */
 9 using System;
10 using System.Collections.Generic;
11 using System.Linq;
12 using System.Text;
13 using System.Threading.Tasks;
14 
15 namespace SecondAssignment
16 {
17     class Program
18     {
19         static void Main(string[] args)
20         {
21             Child c = new Child();
22             c.MConvert(1);
23             Console.ReadKey();
24         }
25     }
26     class Father
27     {
28         //MConvert 方法
29         public virtual void MConvert(double Km)
30         {
31             double mile = Km * 0.62;
32             Console.WriteLine("公里转英里:"+mile);
33         }
34     }
35     class Child : Father
36     {
37         //在子类中重写
38         //其所接受的参数为正方形边长,转换为英里后计算其面积。
39         public override void MConvert(double Km)
40         {
41             double mile = Km * 0.62;
42             double _area = mile * mile;
43             Console.WriteLine("面积为:"+_area);
44         }
45     }
46 }

 

 1 /**
 2  *   3: 创建一个类,重写ToString() 方法, 当其被引用的时候,能够输出此类对象的说明文字,
 3  *   如下:“测试用的myObject 类对象”
 4  */
 5 using System;
 6 using System.Collections.Generic;
 7 using System.Linq;
 8 using System.Text;
 9 using System.Threading.Tasks;
10 
11 namespace SecondAssignment
12 {
13     class Child
14     {
15         public override string ToString()
16         {
17             Console.WriteLine("测试用的myObject 类对象");
18             return base.ToString();
19         }
20     }
21     class Program
22     {
23         static void Main(string[] args)
24         {
25             Child c = new Child();
26             c.ToString();
27             Console.ReadKey();
28         }
29     }
30 }

 

转载于:https://www.cnblogs.com/yx-xiansheng/p/7638750.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值