delphi 关于继承

luojiadashao 2012-03-17 04:15:17
今天学习到继承 :子类——无条件属于——父类;
那么我们究竟 要根据什么条件来声明 继承关系呢?===继承在 OOP中具体怎么用呢?

delphi 支持多继承吗? 就是 一个子类 可以 继承多个父类吗?
请大侠门举个实例说明哈

谢谢谢谢大家!!!!
...全文
135 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
luojiadashao 2012-03-18
  • 打赏
  • 举报
回复
恩 谢谢大家 马上学习接口
山东蓝鸟贵薪 2012-03-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 kaikai_kk 的回复:]
D不支持多重继承,C++支持

不过有这需求的话,可以写成接口,用接口实现
[/Quote]
是的,同意
kaikai_kk 2012-03-17
  • 打赏
  • 举报
回复
D不支持多重继承,C++支持

不过有这需求的话,可以写成接口,用接口实现
我看见佛 2012-03-17
  • 打赏
  • 举报
回复
当然,在DELPHI中最常见和常用的仍然是窗体继承
我看见佛 2012-03-17
  • 打赏
  • 举报
回复
type
TForm1 = class(TForm)//CLASS(这里则为父类名),表示你的TFORM1类继承于TForm类

关于类中方法的继承,前几天有人刚问过。可以参考下!


原理引用KAIKAI的话{为了子类重用或者覆盖,扩展性更强
比如100个窗体,都是继续某一个窗体,但100个窗体中都有一个方法代码是一样的
就可以把此方法写在父窗体中,声明为virtual;或者dynamic;那么这100个子窗体就可以不写一行代码了
有一天某个子窗体要做改动时,用override就可以覆盖此方法,在自己的单元里重写此方法,很方便}

具体写法:{在父窗口声明一个
procedure Test(Sender: TObject);virtual;的事件,然后你的子窗体可以通过
procedure Test(Sender: TObject);override;对父窗体的Test事件进行重写。
procedure Test(Sender: TObject);override;
begin
inherited;//子窗体的重写代码中加上这个则表示仍继承父窗体的Test事件,删除则表示不继承。
end;}

http://topic.csdn.net/u/20120316/08/9d11cb7e-ca6b-4d07-a7bb-533e19065511.html

changsn 2012-03-17
  • 打赏
  • 举报
回复
一个子类只有一个父类。一个父类,可以有若干个子类。

打开delphi,新建个空白工程,只有一个窗体,这个窗体就是继承了TFORM类。

16,749

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧