-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathHotDrink_Teacher.cs
163 lines (158 loc) · 4.49 KB
/
HotDrink_Teacher.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace H
{
public abstract class HotDrink
{
public abstract string Milk
{
set; get;
}
public abstract string Sugar
{
set; get;
}
public virtual void Drink()//方法Drink()
{
Console.WriteLine("Drinking hotdrink!");
}
public abstract void AddMilk();//方法AddMilk()
public abstract void AddSugar();
}
interface ICup //接口
{
string Color
{
get;
}
string Volume
{
get;
}
void Refill();
void Wash();
}
public class CupOfCoffee : HotDrink, ICup
{
string milk, sugar, color, volume;
public string BeanType
{
set { BeanType = value; }
get { return BeanType; }
}
public override string Milk//override重写父类中的milk
{
set { milk = value; }
get { return milk; }
}
public override string Sugar//override重写父类中的sugar
{
set { sugar = value; }
get { return sugar; }
}
public string Color
{
get { return color; }
}
public string Volume
{
get { return volume; }
}
public override void Drink()
{
Console.WriteLine("Drink CupOfCoffee");
}
public override void AddMilk()
{
Console.WriteLine("Add milk to coffee!");
}
public override void AddSugar()
{
Console.WriteLine("Add sugar to coffee!");
}
public void Refill()
{
Console.WriteLine("Refill CupOfCoffee!");
}
public void Wash()
{
Console.WriteLine("Wash CupOfCoffee!");
}
}
public class CupOfTea : HotDrink, ICup
{
string milk, sugar, color, volume;
public string LeafType
{
set { LeafType = value; }
get { return LeafType; }
}
public override string Milk//override重写父类中的milk
{
set { milk = value; }
get { return milk; }
}
public override string Sugar//override重写父类中的sugar
{
set { sugar = value; }
get { return sugar; }
}
public string Color
{
get { return color; }
}
public string Volume
{
get { return volume; }
}
public override void Drink()
{
Console.WriteLine("Drink CupOfTea");
}
public override void AddMilk()
{
Console.WriteLine("Add milk to tea!");
}
public override void AddSugar()
{
Console.WriteLine("Add sugar to tea!");
}
public void Refill()
{
Console.WriteLine("Refill CupOfTea!");
}
public void Wash()
{
Console.WriteLine("Wash CupOfTea!");
}
}
class Test
{
static void AddMilk(HotDrink hd)
{
hd.AddMilk();
}
static void Drink(HotDrink hd)
{
hd.Drink();
}
static void Wash(ICup cup)
{
cup.Wash();
}
static void Main(string[] args)
{
CupOfCoffee coffee = new CupOfCoffee();
AddMilk(coffee);
Drink(coffee);
Wash(coffee);
CupOfTea tea = new CupOfTea();
AddMilk(tea);
Drink(tea);
Wash(tea);
}
}
}