OOP之类、继承与重载

继承是派生类(子类)去实现,例如:public class MeiDiCooker:Cooker;

重写使用override来重写基类(父类)的方法或属性;子类中重载父类中的方法时,父类相应的方法需要用virtual声明;

重载使用new,重载则是对方法参数的个数、位置、参数类型进行了改变,这个前面说过;

重写只是对方法里面的功能实现重新做的了编写,并没有对方法的参数进行添加、改变、删除。

 1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5
6 namespace CookProgram
7 {
8 public class Cooker
9 {
10 public virtual void AppointTime(int hour)//预约时间
11 {
12 Console.WriteLine("你好,你的预约时间为{0}",hour);
13 }
14 public void WhichTaste(int c)//哪种味道
15 {
16 switch (c)
17 {
18 case 1: Console.WriteLine("你所设置的煮饭味道为清香型");
19 break;
20 case 2: Console.WriteLine("你所设置的煮饭味道为浓郁型");
21 break;
22 case 3: Console.WriteLine("你所设置的煮饭味道为标准型");
23 break;
24 }
25
26 }
27 }
28 public class MeiDiCooker:Cooker
29 {
30 public override void AppointTime(int hour)//预约时间,重载上面cooker中预约方法
31 {
32 int min = hour * 60;
33 Console.WriteLine("你好,你的预约时间为{0}分钟",min);
34 }
35 public void RiceType(int r)
36 {
37 switch (r)
38 {
39 case 1: Console.WriteLine("你所设置的煮饭类型为难熟型");
40 break;
41 case 2: Console.WriteLine("你所设置的煮饭类型为易熟型");
42 break;
43 }
44 }
45 }
46 public class JiuYangCooker:MeiDiCooker
47 {
48 public override void AppointTime(int hour)//预约时间
49 {
50 int h;
51 h = hour * 2;
52 Console.WriteLine("你好,你的预约时间为{0}小时",h);
53 }
54 }
55 class Program
56 {
57 static void Main(string[] args)
58 {
59 Cooker cooker = new Cooker();
60 int a,b,c,d,e;
61 Console.WriteLine("你好,请选择一般电饭煲的预约类型:");
62 a = Convert.ToInt32(Console.ReadLine());
63 cooker.WhichTaste(a);
64 Console.WriteLine("你好,请选择美的电饭煲的预约时间:");
65 MeiDiCooker meidi = new MeiDiCooker();
66 b = Convert.ToInt32(Console.ReadLine());
67 meidi.AppointTime(b);
68 Console.WriteLine("你好,请选择美的电饭煲的预约类型:");
69 c = Convert.ToInt32(Console.ReadLine());
70 meidi.WhichTaste(c);
71 JiuYangCooker jiuyang = new JiuYangCooker();
72 Console.WriteLine("你好,请选择九阳电饭煲的预约时间:");
73 d = Convert.ToInt32(Console.ReadLine());
74 jiuyang.AppointTime(d);
75 Console.WriteLine("你好,请选择九阳电饭煲的米饭类型:");
76 e = Convert.ToInt32(Console.ReadLine());
77 jiuyang.RiceType(e);
78
79 }
80 }
81 }



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值