现代Object Pascal介绍-第九部分


立即下载 纾潆锦袖迷子
2024-12-10
接口 procedure
319.6 KB

robsean@126.com QQ 群:192903718
1 / 10
9. 接口
9.1. Bare (CORBA) 接口
一个接口声明一个 API,很像一个类,但是它不定义实施(implementation)。一个类可以实
施(implement)很多接口,但是它仅能有一个原型(ancestor)类。
你可以强制转换(cast)一个类到任何它支持的接口,然后通过这个接口调用方法。这允许以
统一的样式处理类,不从彼此衍生,但是仍然共享一些常见的功能。当一个简单的类继承不
够用时是有用的。
在 Object Pascal 中 CORBA 接口的工作非常像在 Java 中的接口
(https://docs.oracle.com/javase/tutorial/java/concepts/interface.html)或在 C# 中的接口
(https://msdn.microsoft.com/en-us/library/ms173156.aspx).
{$mode objfpc}{$H+}{$J-}
{$interfaces corba}
uses SysUtils, Classes;
type
IMyInterface = interface
['{79352612-668B-4E8C-910A-26975E103CAC}']
procedure Shoot;
end;
TMyClass1 = class(IMyInterface)
procedure Shoot;
end;
TMyClass2 = class(IMyInterface)
procedure Shoot;
end;
TMyClass3 = class
procedure Shoot;
end;
procedure TMyClass1.Shoot;
begin
Writeln('TMyClass1.Shoot');
end;
procedure TMyClass2.Shoot;
begin
Writeln('TMyClass2.Shoot');


接口/procedure/ 接口/procedure/
-1 条回复
登录 后才能参与评论
-->