1
type
2
TOldDog = class(TDog)
3
public
4
PROCEDURE Bark(Timens: Integer);OVERRIDE; //子类 TOldDog覆盖父类TDog方法 Bark
5
//变量个数必须对应,但每个变量名可以不与父类方法一样
6
{ Public declarations }
7
end;
8
type
9
TLittleDog = class(TDog)
10
public
11
PROCEDURE Barkm;
12
//[Warning] : Method 'Bark' hides virtual method of base type 'TDog'
13
//这是子类重新定义,跟父类的Bark无任何关系,所以会把父类的Bark方法隐藏(Hiding)
14
//若其后加reintroduce修饰符可去除编译的警告
15
//[Warning] Unit1.pas(31): Method 'Bark' hides virtual method of base type 'TDog'
16
{ Public declarations }
17
end;
18
PROCEDURE TLittleDog.Barkm;//TLittleDog的Bark方法的实现
19
BEGIN
20
ShowMessage('嗷嗷~~~邀邀');
21
end;
22![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
23
PROCEDURE TOldDog.Bark(Timens: Integer); //TOldDog的Bark方法的实现
24
BEGIN
25
ShowMessage('嗷~~~呜~~~' + #13 + #13 +' 给我 ' + IntToStr(Timens) + ' 根骨头');
26
end;
27![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
28
PROCEDURE TDog.Bark(Times: Integer); //TDog的Bark方法的实现
29
VAR
30
i: Integer;
31
BEGIN
32
i := Times;
33
IF i > 5 THEN
34
ShowMessage('没力,叫不出来!')
35
else
36
FOR I := 1 TO Times DO // Iterate
37
ShowMessage('汪~~ 第 ' + IntToStr(i) + ' 声');
38
// for
39
end;
40![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
41
procedure TForm1.Button1Click(Sender: TObject);
42
VAR
43
SmallWhite: TDog;
44
bkTimes: Integer;
45
begin
46
SmallWhite := TDog.Create; //建立TDog的对象
47
SmallWhite.Name := '小白';
48
Edit1.Text := '狗狗叫做 ' + SmallWhite.Name;
49
bkTimes := StrToInt(InputBox('要 ' + SmallWhite.Name + '叫几声?', '输入次数(限整数)', '3'));
50
SmallWhite.Bark(bkTimes); //调用的是TDog的Bark方法
51
SmallWhite.Free; //析构TDog的对象
52
end;
53![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
54
procedure TForm1.Button2Click(Sender: TObject);
55
VAR
56
OldBlack: TOldDog;
57
begin
58
OldBlack := TOldDog.Create; //建立TOldDog的对象
59
OldBlack.Name := '老黑';
60
Edit1.Text := '老狗叫做 ' + OldBlack.Name;
61
OldBlack.Bark(6); //调用的是TOldDog覆盖后的Bark方法
62
OldBlack.Free; //析构TOldDog的对象
63
end;
64![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
65
procedure TForm1.Button3Click(Sender: TObject);
66
VAR
67
Spot: TLittleDog;
68
begin
69
Spot := TLittleDog.Create; //建立TLittleDog的对象
70
Spot.Name := '小花';
71
Edit1.Text := '小狗叫做 ' + Spot.Name;
72
Spot.Barkm; //调用的是TLittleDog重新定义的Bark方法
73
Spot.Free; //析构TLittleDog的对象
74
end;
75![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
76
procedure TForm1.Button4Click(Sender: TObject);
77
VAR
78
aDog: TDog; //定义为TDog类的对象变量
79
begin
80
aDog := TOldDog.Create; //用子类TOldDog建立父类TDog的对象
81
Label1.Caption := 'aDog 参考ToldDog对象';
82
aDog.Bark(2); //调用的是TOldDog的Bark方法
83
aDog.Free; //析构TOldDog的对象
84![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
85
aDog := TLittleDog.Create; //用子类TLittleDog建立父类TDog的对象
86
Label1.Caption := 'aDog 参考TLittleDog对象';
87
aDog.Bark(2); //调用的是父类TDog的Bark方法
88
// aDog.Barkm; //无法Bind(绑定到)TLittleDog的Bark方法 , 因为跟 父类TDog无任何关系.
89
aDog.Free; //析构TDog的对象
90![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
91
end;
92![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
93![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
22
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
23
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
24
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
25
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
26
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
27
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
28
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
29
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
30
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
31
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
32
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
33
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
34
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
35
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
36
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
37
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
38
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
39
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
40
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
41
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
42
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
43
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
44
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
45
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
46
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
47
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
48
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
49
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
50
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
51
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
52
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
53
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
54
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
55
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
56
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
57
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
58
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
59
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
60
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
61
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
62
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
63
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
64
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
65
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
66
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
67
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
68
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
69
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
70
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
71
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
72
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
73
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
74
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
75
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
76
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
77
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
78
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
79
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
80
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
81
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
82
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
83
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
84
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
85
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
86
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
87
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
88
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
89
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
90
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
91
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
92
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
93
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)